diff src/elab_util.sml @ 1073:b2311dfb3158

Initializers and setval
author Adam Chlipala <adamc@hcoop.net>
date Sun, 13 Dec 2009 14:20:41 -0500
parents b2413e4dd109
children 0657e5adc938
line wrap: on
line diff
--- a/src/elab_util.sml	Sun Dec 13 13:00:55 2009 -0500
+++ b/src/elab_util.sml	Sun Dec 13 14:20:41 2009 -0500
@@ -853,7 +853,8 @@
                                                    bind (ctx, NamedE (x, (CApp ((CModProj (n, [], "cookie"), loc),
                                                                                 c), loc)))
                                                  | DStyle (tn, x, n) =>
-                                                   bind (ctx, NamedE (x, (CModProj (n, [], "css_class"), loc))),
+                                                   bind (ctx, NamedE (x, (CModProj (n, [], "css_class"), loc)))
+                                                 | DInitializer _ => ctx,
                                                mfd ctx d)) ctx ds,
                      fn ds' => (StrConst ds', loc))
               | StrVar _ => S.return2 strAll
@@ -978,6 +979,10 @@
                         fn c' =>
                            (DCookie (tn, x, n, c'), loc))
               | DStyle _ => S.return2 dAll
+              | DInitializer e =>
+                S.map2 (mfe ctx e,
+                        fn e' =>
+                           (DInitializer e', loc))
 
         and mfvi ctx (x, n, c, e) =
             S.bind2 (mfc ctx c,
@@ -1120,6 +1125,7 @@
       | DDatabase _ => 0
       | DCookie (n1, _, n2, _) => Int.max (n1, n2)
       | DStyle (n1, _, n2) => Int.max (n1, n2)
+      | DInitializer _ => 0
 and maxNameStr (str, _) =
     case str of
         StrConst ds => maxName ds