X-Git-Url: https://git.martlubbers.net/?a=blobdiff_plain;f=mTaskMakeSymbols.icl;h=356493f3cb167f4aec9f9294cab616eaa6cdd217;hb=6abf86833edeae1742db393160db8a9e5c043889;hp=bb4c33eb5b6b7d6dce011b49f446f0109ba23a92;hpb=f63e9891ef344e992a8a837cd3301ba3209f1e5c;p=mTask.git diff --git a/mTaskMakeSymbols.icl b/mTaskMakeSymbols.icl index bb4c33e..356493f 100644 --- a/mTaskMakeSymbols.icl +++ b/mTaskMakeSymbols.icl @@ -1,7 +1,8 @@ module mTaskMakeSymbols //import iTasks -import gdynamic, gCons, GenEq, StdMisc, StdArray, GenBimap +import Generics.gCons +import GenEq, StdMisc, StdArray, GenBimap import GenPrint import mTask import StdEnum @@ -18,9 +19,9 @@ from Data.Func import $ import Data.List from Text import class Text(join,toUpperCase), instance Text String -derive consIndex BC -derive consName BC -derive conses BC, AnalogPin +derive consIndex BC, Pin +derive consName BC, Pin +derive conses BC, AnalogPin, DigitalPin, Pin (<+) infixr 5 :: a b -> String | toString a & toString b (<+) a b = toString a +++ toString b @@ -31,7 +32,7 @@ toDefine i b = "#define " <+ toUpperCase (consName{|*|} b) <+ " " <+ i Start w # (io, w) = stdio w # io = io <<< "#ifndef MTASK_H\n#define MTASK_H\n" -# io = io <<< join "\n" (zipWith toDefine [1..] conses{|*|}) +# io = io <<< join "\n" (zipWith toDefine [0..] conses{|*|}) # (ok, w) = fclose (io <<< "\n#endif\n") w | not ok = abort "Couldn't close stdio" = w