characterLiteral:

characterLiteral
         ::= letter
           | digit
           | [\s]

referenced by:


stringlit:

stringlit
         ::= ["] ( characterLiteral | '\\' [nsrt'"\\] )* ["]

referenced by:


letter:

letter   ::= [a-zA-Z]

referenced by:


digit:

digit    ::= [\d]

referenced by:


keyword:

keyword  ::= 'var'
           | 'while'
           | 'and'
           | 'or'
           | 'not'
           | 'true'
           | 'false'
           | 'return'
           | 'for'
           | 'each'
           | 'do'
           | 'if'
           | 'then'
           | 'else'
           | 'in'
           | 'both'
           | 'ava'
           | 'times'
           | type

no references


id:

id       ::= letter ( letter | digit | '_' )*

referenced by:


key:

key      ::= id
           | stringlit

no references


assignop:

assignop ::= '='
           | '+='
           | '-='
           | '*='
           | '/='

no references


relop:

relop    ::= '<'
           | '>'
           | '<='
           | '=='
           | '>='
           | '!='

no references


appendop:

appendop ::= '@'

no references


consop:

consop   ::= '::'

no references


addop:

addop    ::= '+'
           | '-'

no references


mulop:

mulop    ::= '*'
           | '/'
           | '%'

no references


prefixop:

prefixop ::= '-'
           | 'not'

no references


postfixop:

postfixop
         ::= '++'
           | '--'

no references


exponent:

exponent ::= '^^'

no references


intlit:

intlit   ::= [\d]+

no references


boolit:

boolit   ::= 'true'
           | 'false'

no references


comment:

comment  ::= '//' [^\r\n]* [\r\n]
           | '***' ( [.] | [\n] )* '***'

no references


type:

type     ::= 'int'
           | 'string'
           | 'float'
           | 'bool'
           | 'function'
           | 'list'
           | 'object'
           | 'set'

referenced by:



  ... generated by Railroad Diagram Generator