X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=mTaskInterpret.dcl;h=67a68574ca7e06288ad990cdcf49d9d01aead750;hb=17aaf6797b3dd4e820b186a55335a36a89ea92cb;hp=29e1fb95b6e98a089fedd10317b105aa9894383b;hpb=a2df77cbda43d5a24eeb8ac7db7452baae9f18aa;p=mTask.git diff --git a/mTaskInterpret.dcl b/mTaskInterpret.dcl index 29e1fb9..67a6857 100644 --- a/mTaskInterpret.dcl +++ b/mTaskInterpret.dcl @@ -23,6 +23,7 @@ from Generics.gCons import class gCons, generic conses, generic consName, generi :: MTaskMSGSend = MTTask MTaskInterval String | MTTaskDel Int + | MTShutdown | MTSds Int BCValue | MTUpd Int BCValue | MTSpec @@ -39,7 +40,9 @@ from Generics.gCons import class gCons, generic conses, generic consName, generi ,bytesMemory :: Int } -:: BCValue = E.e: BCValue e & mTaskType e +:: BCValue = E.e: BCValue e & mTaskType, TC e + +instance == BCValue instance toString MTaskInterval instance toString MTaskMSGRecv @@ -54,9 +57,9 @@ decode :: String -> MTaskMSGRecv // | BCPush String | BCPop //SDS functions - | BCSdsStore Int - | BCSdsFetch Int - | BCSdsPublish Int + | BCSdsStore BCShare + | BCSdsFetch BCShare + | BCSdsPublish BCShare //Unary ops | BCNot //Binary Int ops @@ -114,7 +117,6 @@ derive gEq BCValue :: BCShare = { sdsi :: Int, - sdspub :: Bool, sdsval :: BCValue } @@ -138,6 +140,8 @@ instance arith ByteCode instance boolExpr ByteCode instance analogIO ByteCode instance digitalIO ByteCode +instance aIO ByteCode +instance dIO ByteCode instance userLed ByteCode instance If ByteCode Stmt Stmt Stmt instance If ByteCode e Stmt Stmt @@ -148,6 +152,7 @@ instance noOp ByteCode instance retrn ByteCode instance sds ByteCode +instance sdspub ByteCode instance assign ByteCode instance seq ByteCode instance serial ByteCode