comparison src/lacweb.grm @ 142:6f9e224692ec

Form submission type-checking
author Adam Chlipala <adamc@hcoop.net>
date Sun, 20 Jul 2008 12:21:30 -0400
parents 63c699450281
children 7420fa18d657
comparison
equal deleted inserted replaced
141:63c699450281 142:6f9e224692ec
283 in 283 in
284 (EAbs ("_", SOME (TRecord (CRecord [], loc), loc), eexp), loc) 284 (EAbs ("_", SOME (TRecord (CRecord [], loc), loc), eexp), loc)
285 end) 285 end)
286 286
287 | LPAREN eexp RPAREN DCOLON cexp (EAnnot (eexp, cexp), s (LPARENleft, cexpright)) 287 | LPAREN eexp RPAREN DCOLON cexp (EAnnot (eexp, cexp), s (LPARENleft, cexpright))
288 | eterm DOT ident (EField (eterm, ident), s (etermleft, identright))
289 288
290 eterm : LPAREN eexp RPAREN (#1 eexp, s (LPARENleft, RPARENright)) 289 eterm : LPAREN eexp RPAREN (#1 eexp, s (LPARENleft, RPARENright))
291 290
292 | path (EVar path, s (pathleft, pathright)) 291 | path (EVar path, s (pathleft, pathright))
293 | LBRACE rexp RBRACE (ERecord rexp, s (LBRACEleft, RBRACEright)) 292 | LBRACE rexp RBRACE (ERecord rexp, s (LBRACEleft, RBRACEright))
295 294
296 | INT (EPrim (Prim.Int INT), s (INTleft, INTright)) 295 | INT (EPrim (Prim.Int INT), s (INTleft, INTright))
297 | FLOAT (EPrim (Prim.Float FLOAT), s (FLOATleft, FLOATright)) 296 | FLOAT (EPrim (Prim.Float FLOAT), s (FLOATleft, FLOATright))
298 | STRING (EPrim (Prim.String STRING), s (STRINGleft, STRINGright)) 297 | STRING (EPrim (Prim.String STRING), s (STRINGleft, STRINGright))
299 298
299 | path DOT ident (EField ((EVar path, s (pathleft, pathright)), ident), s (pathleft, identright))
300 | FOLD (EFold, s (FOLDleft, FOLDright)) 300 | FOLD (EFold, s (FOLDleft, FOLDright))
301 301
302 | XML_BEGIN xml XML_END (xml) 302 | XML_BEGIN xml XML_END (xml)
303 | XML_BEGIN XML_END (EApp ((EVar (["Basis"], "cdata"), s (XML_BEGINleft, XML_ENDright)), 303 | XML_BEGIN XML_END (EApp ((EVar (["Basis"], "cdata"), s (XML_BEGINleft, XML_ENDright)),
304 (EPrim (Prim.String ""), s (XML_BEGINleft, XML_ENDright))), 304 (EPrim (Prim.String ""), s (XML_BEGINleft, XML_ENDright))),