summaryrefslogtreecommitdiff
path: root/src/lacweb.grm
diff options
context:
space:
mode:
authorGravatar Adam Chlipala <adamc@hcoop.net>2008-06-08 12:27:08 -0400
committerGravatar Adam Chlipala <adamc@hcoop.net>2008-06-08 12:27:08 -0400
commit32115a531d5ed6cafa25dc7d3b88c2679e5142a5 (patch)
tree17f75e04d2559dc15a0f184c1c7da266de8a5a16 /src/lacweb.grm
parentc060d15003e3435d4d4c770d8f109f756db13ef5 (diff)
Primitive type constants
Diffstat (limited to 'src/lacweb.grm')
-rw-r--r--src/lacweb.grm5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/lacweb.grm b/src/lacweb.grm
index 80b35510..775cb31c 100644
--- a/src/lacweb.grm
+++ b/src/lacweb.grm
@@ -36,6 +36,7 @@ val s = ErrorMsg.spanOf
%term
EOF
+ | STRING of string | INT of Int64.int | FLOAT of Real64.real
| SYMBOL of string | CSYMBOL of string
| LPAREN | RPAREN | LBRACK | RBRACK | LBRACE | RBRACE
| EQ | COMMA | COLON | DCOLON | TCOLON | DOT | HASH
@@ -155,6 +156,10 @@ eterm : LPAREN eexp RPAREN (#1 eexp, s (LPARENleft, RPARENright))
| SYMBOL (EVar SYMBOL, s (SYMBOLleft, SYMBOLright))
| LBRACE rexp RBRACE (ERecord rexp, s (LBRACEleft, RBRACEright))
+ | INT (EPrim (Prim.Int INT), s (INTleft, INTright))
+ | FLOAT (EPrim (Prim.Float FLOAT), s (FLOATleft, FLOATright))
+ | STRING (EPrim (Prim.String STRING), s (STRINGleft, STRINGright))
+
rexp : ([])
| ident EQ eexp ([(ident, eexp)])
| ident EQ eexp COMMA rexp ((ident, eexp) :: rexp)