summaryrefslogtreecommitdiff
path: root/src/urweb.grm
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2008-11-06 10:43:48 -0500
committerGravatar Adam Chlipala <adamc@hcoop.net>2008-11-06 10:43:48 -0500
commitea5a24773259c147e806960843d3305a3c72067b (patch)
tree2e714f5fc0b6c669bad6c201f3a4b11fec490513 /src/urweb.grm
parent12bb99a0ba702af12e89bfe544f2a572e5d4818d (diff)
Cookies through explify
Diffstat (limited to 'src/urweb.grm')
-rw-r--r--src/urweb.grm23
1 files changed, 20 insertions, 3 deletions
diff --git a/src/urweb.grm b/src/urweb.grm
index 879afb9c..b2f2d486 100644
--- a/src/urweb.grm
+++ b/src/urweb.grm
@@ -497,8 +497,19 @@ sgi : CON SYMBOL DCOLON kind (SgiConAbs (SYMBOL, kind), s (CONleft, k
s (FUNCTORleft, sgn2right))
| INCLUDE sgn (SgiInclude sgn, s (INCLUDEleft, sgnright))
| CONSTRAINT cterm TWIDDLE cterm (SgiConstraint (cterm1, cterm2), s (CONSTRAINTleft, ctermright))
- | TABLE SYMBOL COLON cexp (SgiTable (SYMBOL, entable cexp), s (TABLEleft, cexpright))
- | SEQUENCE SYMBOL (SgiSequence SYMBOL, s (SEQUENCEleft, SYMBOLright))
+ | TABLE SYMBOL COLON cexp (let
+ val loc = s (TABLEleft, cexpright)
+ val t = (CApp ((CVar (["Basis"], "sql_table"), loc),
+ entable cexp), loc)
+ in
+ (SgiVal (SYMBOL, t), loc)
+ end)
+ | SEQUENCE SYMBOL (let
+ val loc = s (SEQUENCEleft, SYMBOLright)
+ val t = (CVar (["Basis"], "sql_sequence"), loc)
+ in
+ (SgiVal (SYMBOL, t), loc)
+ end)
| CLASS SYMBOL (SgiClassAbs SYMBOL, s (CLASSleft, SYMBOLright))
| CLASS SYMBOL EQ cexp (SgiClass (SYMBOL, cexp), s (CLASSleft, cexpright))
| CLASS SYMBOL SYMBOL EQ cexp (let
@@ -508,7 +519,13 @@ sgi : CON SYMBOL DCOLON kind (SgiConAbs (SYMBOL, kind), s (CONleft, k
in
(SgiClass (SYMBOL1, c), s (CLASSleft, cexpright))
end)
- | COOKIE SYMBOL COLON cexp (SgiCookie (SYMBOL, cexp), s (COOKIEleft, cexpright))
+ | COOKIE SYMBOL COLON cexp (let
+ val loc = s (COOKIEleft, cexpright)
+ val t = (CApp ((CVar (["Basis"], "http_cookie"), loc),
+ entable cexp), loc)
+ in
+ (SgiVal (SYMBOL, t), loc)
+ end)
sgis : ([])
| sgi sgis (sgi :: sgis)