X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/24248d627b677abd0a21092f71c445b0934f2bdc..400fd64b3e8a53f43534eb5cf23ad4cfcf79ce93:/src/domtool.grm diff --git a/src/domtool.grm b/src/domtool.grm index 13ee80b..ea6db74 100644 --- a/src/domtool.grm +++ b/src/domtool.grm @@ -34,7 +34,7 @@ open Ast | EQ | COMMA | BSLASH | BSLASHBSLASH | SEMI | LET | IN | BEGIN | END | IF | THEN | ELSE | ROOT | SKIP - | EXTERN | TYPE | VAL | WITH | WHERE | CONTEXT + | EXTERN | TYPE | VAL | ENV | WITH | WHERE | CONTEXT %nonterm file of file @@ -79,7 +79,7 @@ open Ast %% -file : docOpt decls expOpt SEMIopt (docOpt, decls, expOpt) +file : docOpt decls expOpt (docOpt, decls, expOpt) decls : ([]) | decl decls (decl :: decls) @@ -90,6 +90,8 @@ decl' : EXTERN TYPE SYMBOL (DExternType SYMBOL) | EXTERN VAL SYMBOL COLON typ (DExternVal (SYMBOL, typ)) | VAL SYMBOL EQ exp (DVal (SYMBOL, NONE, exp)) | VAL SYMBOL COLON typ EQ exp (DVal (SYMBOL, SOME typ, exp)) + | ENV CSYMBOL EQ exp (DEnv (CSYMBOL, NONE, exp)) + | ENV CSYMBOL COLON typ EQ exp (DEnv (CSYMBOL, SOME typ, exp)) | CONTEXT CSYMBOL (DContext CSYMBOL) docOpt : (NONE)