comparison src/urweb.grm @ 754:8688e01ae469

A view query works
author Adam Chlipala <adamc@hcoop.net>
date Tue, 28 Apr 2009 15:04:37 -0400
parents f95d652086cd
children 8ce31c052dce
comparison
equal deleted inserted replaced
753:d484df4e841a 754:8688e01ae469
193 | TYPE | NAME 193 | TYPE | NAME
194 | ARROW | LARROW | DARROW | STAR | SEMI | KARROW | DKARROW | BANG 194 | ARROW | LARROW | DARROW | STAR | SEMI | KARROW | DKARROW | BANG
195 | FN | PLUSPLUS | MINUSMINUS | MINUSMINUSMINUS | DOLLAR | TWIDDLE | CARET 195 | FN | PLUSPLUS | MINUSMINUS | MINUSMINUSMINUS | DOLLAR | TWIDDLE | CARET
196 | LET | IN 196 | LET | IN
197 | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN | SQL 197 | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN | SQL
198 | INCLUDE | OPEN | CONSTRAINT | CONSTRAINTS | EXPORT | TABLE | SEQUENCE 198 | INCLUDE | OPEN | CONSTRAINT | CONSTRAINTS | EXPORT | TABLE | SEQUENCE | VIEW
199 | COOKIE | STYLE 199 | COOKIE | STYLE
200 | CASE | IF | THEN | ELSE 200 | CASE | IF | THEN | ELSE
201 201
202 | XML_BEGIN of string | XML_END | XML_BEGIN_END of string 202 | XML_BEGIN of string | XML_END | XML_BEGIN_END of string
203 | NOTAGS of string 203 | NOTAGS of string
436 | CONSTRAINT cterm TWIDDLE cterm ([(DConstraint (cterm1, cterm2), s (CONSTRAINTleft, ctermright))]) 436 | CONSTRAINT cterm TWIDDLE cterm ([(DConstraint (cterm1, cterm2), s (CONSTRAINTleft, ctermright))])
437 | EXPORT spath ([(DExport spath, s (EXPORTleft, spathright))]) 437 | EXPORT spath ([(DExport spath, s (EXPORTleft, spathright))])
438 | TABLE SYMBOL COLON cterm pkopt commaOpt cstopt([(DTable (SYMBOL, entable cterm, pkopt, cstopt), 438 | TABLE SYMBOL COLON cterm pkopt commaOpt cstopt([(DTable (SYMBOL, entable cterm, pkopt, cstopt),
439 s (TABLEleft, cstoptright))]) 439 s (TABLEleft, cstoptright))])
440 | SEQUENCE SYMBOL ([(DSequence SYMBOL, s (SEQUENCEleft, SYMBOLright))]) 440 | SEQUENCE SYMBOL ([(DSequence SYMBOL, s (SEQUENCEleft, SYMBOLright))])
441 | VIEW SYMBOL EQ query ([(DView (SYMBOL, query),
442 s (VIEWleft, queryright))])
443 | VIEW SYMBOL EQ LBRACE eexp RBRACE ([(DView (SYMBOL, eexp),
444 s (VIEWleft, RBRACEright))])
441 | CLASS SYMBOL EQ cexp (let 445 | CLASS SYMBOL EQ cexp (let
442 val loc = s (CLASSleft, cexpright) 446 val loc = s (CLASSleft, cexpright)
443 in 447 in
444 [(DClass (SYMBOL, (KWild, loc), cexp), loc)] 448 [(DClass (SYMBOL, (KWild, loc), cexp), loc)]
445 end) 449 end)
669 (SgiTable (SYMBOL, entable cterm, pkopt, cstopt), loc) 673 (SgiTable (SYMBOL, entable cterm, pkopt, cstopt), loc)
670 end) 674 end)
671 | SEQUENCE SYMBOL (let 675 | SEQUENCE SYMBOL (let
672 val loc = s (SEQUENCEleft, SYMBOLright) 676 val loc = s (SEQUENCEleft, SYMBOLright)
673 val t = (CVar (["Basis"], "sql_sequence"), loc) 677 val t = (CVar (["Basis"], "sql_sequence"), loc)
678 in
679 (SgiVal (SYMBOL, t), loc)
680 end)
681 | VIEW SYMBOL COLON cexp (let
682 val loc = s (VIEWleft, cexpright)
683 val t = (CVar (["Basis"], "sql_view"), loc)
684 val t = (CApp (t, cexp), loc)
674 in 685 in
675 (SgiVal (SYMBOL, t), loc) 686 (SgiVal (SYMBOL, t), loc)
676 end) 687 end)
677 | CLASS SYMBOL (let 688 | CLASS SYMBOL (let
678 val loc = s (CLASSleft, SYMBOLright) 689 val loc = s (CLASSleft, SYMBOLright)