X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=mTask.icl;h=2bbcc30264dc78736e2bbd60709ae48ebf209981;hb=a2df77cbda43d5a24eeb8ac7db7452baae9f18aa;hp=34703d23fa40e8e4c90081ad9c9a580986aac00c;hpb=7a67ef5e2af69cb14011be201fe67f755b91a788;p=mTask.git diff --git a/mTask.icl b/mTask.icl index 34703d2..2bbcc30 100644 --- a/mTask.icl +++ b/mTask.icl @@ -14,8 +14,11 @@ todo: imporove setp: >>*. */ +import Generics.gCons +import Generics.gdynamic + import iTasks -import gdynamic, gCons, GenEq, StdMisc, StdArray +import GenEq, StdMisc, StdArray, GenBimap import mTaskCode import mTaskSerial, mTaskLCD @@ -56,6 +59,7 @@ instance type2string Char where type2string _ = "char" instance type2string MTask where type2string _ = "task" instance type2string DigitalPin where type2string _ = "int" instance type2string AnalogPin where type2string _ = "int" +instance type2string UserLED where type2string _ = "int" instance type2string String where type2string _ = "Char []" instance type2string () where type2string _ = "" @@ -117,9 +121,10 @@ instance long Eval Long where instance == DigitalPin where (==) x y = x === y instance == AnalogPin where (==) x y = x === y +instance == UserLED where (==) x y = x === y -derive consName DigitalPin, AnalogPin, PinMode -derive consIndex DigitalPin, AnalogPin +//derive class gCons UserLED, Long, Pin, Button, UserLED, AnalogPin, DigitalPin, PinMode +//derive class iTask UserLED, Long, Pin, Button, UserLED, AnalogPin, DigitalPin, PinMode tab =: toString (repeatn tabSize ' ') tabSize :== 2