summaryrefslogtreecommitdiff
path: root/src/monoize.sml
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2009-02-15 09:27:36 -0500
committerGravatar Adam Chlipala <adamc@hcoop.net>2009-02-15 09:27:36 -0500
commite27335a18e8f4b1cca2749e8d41863b3cbef9b62 (patch)
treece010b2988315e7b327f46f1c2b0ee9fef759f4f /src/monoize.sml
parentf7db36644bdbde7b0ed48daffeb760bd5418bd2e (diff)
Export RPC functions and push RPC calls through to Mono
Diffstat (limited to 'src/monoize.sml')
-rw-r--r--src/monoize.sml8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/monoize.sml b/src/monoize.sml
index a1f61143..fb1ac2f1 100644
--- a/src/monoize.sml
+++ b/src/monoize.sml
@@ -2225,7 +2225,13 @@ fun monoExp (env, st, fm) (all as (e, loc)) =
((L'.ELet (x, t', e1, e2), loc), fm)
end
- | L.EServerCall _ => raise Fail "Monoize EServerCall"
+ | L.EServerCall (n, es, ek) =>
+ let
+ val (es, fm) = ListUtil.foldlMap (fn (e, fm) => monoExp (env, st, fm) e) fm es
+ val (ek, fm) = monoExp (env, st, fm) ek
+ in
+ ((L'.EServerCall (n, es, ek), loc), fm)
+ end
end
fun monoDecl (env, fm) (all as (d, loc)) =