Mercurial > urweb
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) |