comparison src/urweb.grm @ 460:d34834af4512

Cookies through explify
author Adam Chlipala <adamc@hcoop.net>
date Thu, 06 Nov 2008 10:43:48 -0500
parents f542bc3133dc
children 3f1b9231a37b
comparison
equal deleted inserted replaced
459:f542bc3133dc 460:d34834af4512
495 (SgiStr (CSYMBOL1, 495 (SgiStr (CSYMBOL1,
496 (SgnFun (CSYMBOL2, sgn1, sgn2), s (FUNCTORleft, sgn2right))), 496 (SgnFun (CSYMBOL2, sgn1, sgn2), s (FUNCTORleft, sgn2right))),
497 s (FUNCTORleft, sgn2right)) 497 s (FUNCTORleft, sgn2right))
498 | INCLUDE sgn (SgiInclude sgn, s (INCLUDEleft, sgnright)) 498 | INCLUDE sgn (SgiInclude sgn, s (INCLUDEleft, sgnright))
499 | CONSTRAINT cterm TWIDDLE cterm (SgiConstraint (cterm1, cterm2), s (CONSTRAINTleft, ctermright)) 499 | CONSTRAINT cterm TWIDDLE cterm (SgiConstraint (cterm1, cterm2), s (CONSTRAINTleft, ctermright))
500 | TABLE SYMBOL COLON cexp (SgiTable (SYMBOL, entable cexp), s (TABLEleft, cexpright)) 500 | TABLE SYMBOL COLON cexp (let
501 | SEQUENCE SYMBOL (SgiSequence SYMBOL, s (SEQUENCEleft, SYMBOLright)) 501 val loc = s (TABLEleft, cexpright)
502 val t = (CApp ((CVar (["Basis"], "sql_table"), loc),
503 entable cexp), loc)
504 in
505 (SgiVal (SYMBOL, t), loc)
506 end)
507 | SEQUENCE SYMBOL (let
508 val loc = s (SEQUENCEleft, SYMBOLright)
509 val t = (CVar (["Basis"], "sql_sequence"), loc)
510 in
511 (SgiVal (SYMBOL, t), loc)
512 end)
502 | CLASS SYMBOL (SgiClassAbs SYMBOL, s (CLASSleft, SYMBOLright)) 513 | CLASS SYMBOL (SgiClassAbs SYMBOL, s (CLASSleft, SYMBOLright))
503 | CLASS SYMBOL EQ cexp (SgiClass (SYMBOL, cexp), s (CLASSleft, cexpright)) 514 | CLASS SYMBOL EQ cexp (SgiClass (SYMBOL, cexp), s (CLASSleft, cexpright))
504 | CLASS SYMBOL SYMBOL EQ cexp (let 515 | CLASS SYMBOL SYMBOL EQ cexp (let
505 val loc = s (CLASSleft, cexpright) 516 val loc = s (CLASSleft, cexpright)
506 val k = (KType, loc) 517 val k = (KType, loc)
507 val c = (CAbs (SYMBOL2, SOME k, cexp), loc) 518 val c = (CAbs (SYMBOL2, SOME k, cexp), loc)
508 in 519 in
509 (SgiClass (SYMBOL1, c), s (CLASSleft, cexpright)) 520 (SgiClass (SYMBOL1, c), s (CLASSleft, cexpright))
510 end) 521 end)
511 | COOKIE SYMBOL COLON cexp (SgiCookie (SYMBOL, cexp), s (COOKIEleft, cexpright)) 522 | COOKIE SYMBOL COLON cexp (let
523 val loc = s (COOKIEleft, cexpright)
524 val t = (CApp ((CVar (["Basis"], "http_cookie"), loc),
525 entable cexp), loc)
526 in
527 (SgiVal (SYMBOL, t), loc)
528 end)
512 529
513 sgis : ([]) 530 sgis : ([])
514 | sgi sgis (sgi :: sgis) 531 | sgi sgis (sgi :: sgis)
515 532
516 str : STRUCT decls END (StrConst decls, s (STRUCTleft, ENDright)) 533 str : STRUCT decls END (StrConst decls, s (STRUCTleft, ENDright))