summaryrefslogtreecommitdiff
path: root/src/urweb.grm
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adam@chlipala.net>2012-04-29 13:17:31 -0400
committerGravatar Adam Chlipala <adam@chlipala.net>2012-04-29 13:17:31 -0400
commit05b7d79819dd5f006527bef7679b06868b3e0da7 (patch)
tree0ecad148d41060d9728486fd61309de6e8cb561e /src/urweb.grm
parentc5521a5f402e3d5f7c2e9c4a36966df196a70fdd (diff)
Initial support for reusing elaboration results
Diffstat (limited to 'src/urweb.grm')
-rw-r--r--src/urweb.grm13
1 files changed, 6 insertions, 7 deletions
diff --git a/src/urweb.grm b/src/urweb.grm
index c81ca9e6..0fe9b987 100644
--- a/src/urweb.grm
+++ b/src/urweb.grm
@@ -262,7 +262,7 @@ fun tnamesOf (e, _) =
| ARROW | LARROW | DARROW | STAR | SEMI | KARROW | DKARROW | BANG
| FN | PLUSPLUS | MINUSMINUS | MINUSMINUSMINUS | DOLLAR | TWIDDLE | CARET
| LET | IN
- | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | EXTERN | SQL | SELECT1
+ | STRUCTURE | SIGNATURE | STRUCT | SIG | END | FUNCTOR | WHERE | SQL | SELECT1
| INCLUDE | OPEN | CONSTRAINT | CONSTRAINTS | EXPORT | TABLE | SEQUENCE | VIEW
| COOKIE | STYLE | TASK | POLICY
| CASE | IF | THEN | ELSE | ANDALSO | ORELSE
@@ -493,17 +493,16 @@ decl : CON SYMBOL cargl2 kopt EQ cexp (let
| FUN valis ([(DValRec valis, s (FUNleft, valisright))])
| SIGNATURE CSYMBOL EQ sgn ([(DSgn (CSYMBOL, sgn), s (SIGNATUREleft, sgnright))])
- | STRUCTURE CSYMBOL EQ str ([(DStr (CSYMBOL, NONE, str), s (STRUCTUREleft, strright))])
- | STRUCTURE CSYMBOL COLON sgn EQ str ([(DStr (CSYMBOL, SOME sgn, str), s (STRUCTUREleft, strright))])
+ | STRUCTURE CSYMBOL EQ str ([(DStr (CSYMBOL, NONE, NONE, str), s (STRUCTUREleft, strright))])
+ | STRUCTURE CSYMBOL COLON sgn EQ str ([(DStr (CSYMBOL, SOME sgn, NONE, str), s (STRUCTUREleft, strright))])
| FUNCTOR CSYMBOL LPAREN CSYMBOL COLON sgn RPAREN EQ str
- ([(DStr (CSYMBOL1, NONE,
+ ([(DStr (CSYMBOL1, NONE, NONE,
(StrFun (CSYMBOL2, sgn1, NONE, str), s (FUNCTORleft, strright))),
s (FUNCTORleft, strright))])
| FUNCTOR CSYMBOL LPAREN CSYMBOL COLON sgn RPAREN COLON sgn EQ str
- ([(DStr (CSYMBOL1, NONE,
+ ([(DStr (CSYMBOL1, NONE, NONE,
(StrFun (CSYMBOL2, sgn1, SOME sgn2, str), s (FUNCTORleft, strright))),
s (FUNCTORleft, strright))])
- | EXTERN STRUCTURE CSYMBOL COLON sgn ([(DFfiStr (CSYMBOL, sgn), s (EXTERNleft, sgnright))])
| OPEN mpath (case mpath of
[] => raise Fail "Impossible mpath parse [1]"
| m :: ms => [(DOpen (m, ms), s (OPENleft, mpathright))])
@@ -516,7 +515,7 @@ decl : CON SYMBOL cargl2 kopt EQ cexp (let
foldl (fn (m, str) => (StrProj (str, m), loc))
(StrVar m, loc) ms
in
- [(DStr ("anon", NONE, (StrApp (m, str), loc)), loc),
+ [(DStr ("anon", NONE, NONE, (StrApp (m, str), loc)), loc),
(DOpen ("anon", []), loc)]
end)
| OPEN CONSTRAINTS mpath (case mpath of