Mercurial > urweb
comparison src/urweb.grm @ 339:075b36dbb1a4
Crud supports INSERT
author | Adam Chlipala <adamc@hcoop.net> |
---|---|
date | Sun, 14 Sep 2008 15:10:04 -0400 |
parents | e976b187d73a |
children | 389399d65331 |
comparison
equal
deleted
inserted
replaced
338:e976b187d73a | 339:075b36dbb1a4 |
---|---|
10 * this list of conditions and the following disclaimer in the documentation | 10 * this list of conditions and the following disclaimer in the documentation |
11 * and/or other materials provided with the distribution. | 11 * and/or other materials provided with the distribution. |
12 * - The names of contributors may not be used to endorse or promote products | 12 * - The names of contributors may not be used to endorse or promote products |
13 * derived from this software without specific prior written permission. | 13 * derived from this software without specific prior written permission. |
14 * | 14 * |
15 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | 15 * THIS SOFTARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
16 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 16 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
17 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | 17 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
18 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE | 18 * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE |
19 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | 19 * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
20 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | 20 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
170 | CON | LTYPE | VAL | REC | AND | FUN | FOLD | UNIT | KUNIT | CLASS | 170 | CON | LTYPE | VAL | REC | AND | FUN | FOLD | UNIT | KUNIT | CLASS |
171 | DATATYPE | OF | 171 | DATATYPE | OF |
172 | TYPE | NAME | 172 | TYPE | NAME |
173 | ARROW | LARROW | DARROW | STAR | SEMI | 173 | ARROW | LARROW | DARROW | STAR | SEMI |
174 | FN | PLUSPLUS | MINUSMINUS | DOLLAR | TWIDDLE | 174 | FN | PLUSPLUS | MINUSMINUS | DOLLAR | TWIDDLE |
175 | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN | 175 | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN | WITH | SQL |
176 | INCLUDE | OPEN | CONSTRAINT | CONSTRAINTS | EXPORT | TABLE | SEQUENCE | 176 | INCLUDE | OPEN | CONSTRAINT | CONSTRAINTS | EXPORT | TABLE | SEQUENCE |
177 | CASE | IF | THEN | ELSE | 177 | CASE | IF | THEN | ELSE |
178 | 178 |
179 | XML_BEGIN of string | XML_END | 179 | XML_BEGIN of string | XML_END |
180 | NOTAGS of string | 180 | NOTAGS of string |
314 %right COMMA | 314 %right COMMA |
315 %right OR | 315 %right OR |
316 %right CAND | 316 %right CAND |
317 %nonassoc EQ NE LT LE GT GE | 317 %nonassoc EQ NE LT LE GT GE |
318 %right ARROW | 318 %right ARROW |
319 %left WITH | |
319 %right PLUSPLUS MINUSMINUS | 320 %right PLUSPLUS MINUSMINUS |
320 %right STAR | 321 %right STAR |
321 %left NOT | 322 %left NOT |
322 %nonassoc TWIDDLE | 323 %nonassoc TWIDDLE |
323 %nonassoc DOLLAR | 324 %nonassoc DOLLAR |
658 in | 659 in |
659 (EApp (e, (EAbs ("_", SOME t, eexp2), loc)), loc) | 660 (EApp (e, (EAbs ("_", SOME t, eexp2), loc)), loc) |
660 end) | 661 end) |
661 | eexp EQ eexp (native_op ("eq", eexp1, eexp2, s (eexp1left, eexp2right))) | 662 | eexp EQ eexp (native_op ("eq", eexp1, eexp2, s (eexp1left, eexp2right))) |
662 | eexp NE eexp (native_op ("ne", eexp1, eexp2, s (eexp1left, eexp2right))) | 663 | eexp NE eexp (native_op ("ne", eexp1, eexp2, s (eexp1left, eexp2right))) |
664 | eexp WITH cterm EQ eexp (EWith (eexp1, cterm, eexp2), s (eexp1left, eexp2right)) | |
663 | 665 |
664 eargs : earg (earg) | 666 eargs : earg (earg) |
665 | eargl (eargl) | 667 | eargl (eargl) |
666 | 668 |
667 eargl : eargp eargp (eargp1 o eargp2) | 669 eargl : eargp eargp (eargp1 o eargp2) |
769 (EPrim (Prim.String ""), s (XML_BEGINleft, XML_ENDright))), | 771 (EPrim (Prim.String ""), s (XML_BEGINleft, XML_ENDright))), |
770 s (XML_BEGINleft, XML_ENDright)) | 772 s (XML_BEGINleft, XML_ENDright)) |
771 | 773 |
772 | LPAREN query RPAREN (query) | 774 | LPAREN query RPAREN (query) |
773 | LPAREN CWHERE sqlexp RPAREN (sqlexp) | 775 | LPAREN CWHERE sqlexp RPAREN (sqlexp) |
776 | LPAREN SQL sqlexp RPAREN (sqlexp) | |
774 | 777 |
775 | LPAREN INSERT INTO texp LPAREN fields RPAREN VALUES LPAREN sqlexps RPAREN RPAREN | 778 | LPAREN INSERT INTO texp LPAREN fields RPAREN VALUES LPAREN sqlexps RPAREN RPAREN |
776 (let | 779 (let |
777 val loc = s (LPAREN1left, RPAREN3right) | 780 val loc = s (LPAREN1left, RPAREN3right) |
778 | 781 |