diff options
author | Adam Chlipala <adamc@hcoop.net> | 2009-12-15 10:19:05 -0500 |
---|---|---|
committer | Adam Chlipala <adamc@hcoop.net> | 2009-12-15 10:19:05 -0500 |
commit | 6179a09d47c5af4db1ac41d00b8cb7ec36741c3e (patch) | |
tree | 0912963011416a0f1132c07d44c3eca8b6545d54 /src/cjrize.sml | |
parent | 1589307fcb887ec55b5baea7445747b479a665d2 (diff) |
Convert to task syntax
Diffstat (limited to 'src/cjrize.sml')
-rw-r--r-- | src/cjrize.sml | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/cjrize.sml b/src/cjrize.sml index 3936f6a5..0136bdf6 100644 --- a/src/cjrize.sml +++ b/src/cjrize.sml @@ -660,13 +660,17 @@ fun cifyDecl ((d, loc), sm) = | L.DJavaScript s => (SOME (L'.DJavaScript s, loc), NONE, sm) | L.DCookie args => (SOME (L'.DCookie args, loc), NONE, sm) | L.DStyle args => (SOME (L'.DStyle args, loc), NONE, sm) - | L.DInitializer e => - (case #1 e of + | L.DTask (e1, e2) => + (case #1 e2 of L.EAbs (_, _, _, e) => let + val tk = case #1 e1 of + L.EFfi ("Basis", "initialize") => L'.Initialize + | _ => (ErrorMsg.errorAt loc "Task kind not fully determined"; + L'.Initialize) val (e, sm) = cifyExp (e, sm) in - (SOME (L'.DInitializer e, loc), NONE, sm) + (SOME (L'.DTask (tk, e), loc), NONE, sm) end | _ => (ErrorMsg.errorAt loc "Initializer has not been fully determined"; (NONE, NONE, sm))) |