fix grammar

This commit is contained in:
nora 2021-11-02 20:37:43 +01:00
parent af9a4a9d13
commit 7d45811913

View file

@ -22,12 +22,12 @@
<declaration> ::= "let" <IDENT> "=" <expression> ";"
<assignment> ::= <IDENT> "=" <expression> ";"
<assignment> ::= { call "." } <IDENT> "=" <expression> ";"
<fn-decl> ::= "fn" <IDENT> <fn-args> <block>
<fn-args> ::= "(" { <IDENT> { "," } } ")"
<fn-args> ::= "(" <ident-list> ")"
<if-stmt> ::= "if" <expression> <block> { <else-part> }
@ -66,7 +66,7 @@
<unary> ::= { ( "not" | "-" ) } <call>
<call> ::= <primary> ( "(" { <expr> "," } ")" | "." <call> )
<call> ::= <primary> { ( "(" <expr-list> ")" | "." <IDENT> ) }
<primary> ::= <IDENT>
| <NUMBER>
@ -78,6 +78,11 @@
| "null"
| "(" <expression> ")"
<object-literal> = "{}"
<object-literal> ::= "{}"
<array-literal> = "[" { <expression> { "," } } "]"
<array-literal> ::= "[" <expr-list> "]"
<expr-list> ::= { <expression> { "," <expression> } { "," } }
<ident-list> ::= { <IDENT> { "," <IDENT> } { "," } }