diff src/rpcify.sml @ 650:fcf0bd3d1667

BatchG demo
author Adam Chlipala <adamc@hcoop.net>
date Tue, 10 Mar 2009 16:38:38 -0400
parents 96ebc6bdb5a0
children bab524996fca
line wrap: on
line diff
--- a/src/rpcify.sml	Tue Mar 10 15:17:23 2009 -0400
+++ b/src/rpcify.sml	Tue Mar 10 16:38:38 2009 -0400
@@ -71,13 +71,16 @@
 
 fun frob file =
     let
-        fun sideish (basis, ssids) =
-            U.Exp.exists {kind = fn _ => false,
-                          con = fn _ => false,
-                          exp = fn ENamed n => IS.member (ssids, n)
-                                 | EFfi ("Basis", x) => SS.member (basis, x)
-                                 | EFfiApp ("Basis", x, _) => SS.member (basis, x)
-                                 | _ => false}
+        fun sideish (basis, ssids) e =
+            case #1 e of
+                ERecord _ => false
+              | _ =>
+                U.Exp.exists {kind = fn _ => false,
+                              con = fn _ => false,
+                              exp = fn ENamed n => IS.member (ssids, n)
+                                     | EFfi ("Basis", x) => SS.member (basis, x)
+                                     | EFfiApp ("Basis", x, _) => SS.member (basis, x)
+                                     | _ => false} e
 
         fun whichIds basis =
             let
@@ -331,6 +334,10 @@
                                                                                  CorePrint.p_exp CoreEnv.empty (e, loc))];
                                                           raise Fail "Rpcify: Undetected transaction function [2]")
                                                | SOME x => x
+                                                           
+                                         val () = Print.prefaces "Double true"
+                                                                 [("trans1", CorePrint.p_exp CoreEnv.empty trans1),
+                                                                  ("e", CorePrint.p_exp CoreEnv.empty e)]
 
                                          val n' = #maxName st