optional attributes
true or false constants
single value expressions, where != 0 is true and != null is true
main entry point for an expression
a regular ident but also something in single quotes '[email protected] and - is a good ident eh'
allow JSON ids with double quotes, single quotes or no quotes
optional attributes
:<>type[kind]* <> means it's a ref, not ownership * means it's a list
parm assignment, left side can be a[5].name, useful in a $val
parm definition / assignment
parm definition / assignment
name:<>type[kind]*~=default
<> means it's a ref, not ownership * means it's a list
simple ident = expr assignemtn when calling
qualified idents, .
qualified idents, . notation, parsed as a single string
qualified idents, .
qualified idents, . notation, parsed as a list
(Changed in version 2.9.0) The p0
call-by-name arguments is evaluated at most once per constructed Parser object, instead of on every need that arises during parsing.
expressions parser. this is a trait you can mix in your other DSL parsers, see SimpleExprParser for a concrete implementation
See http://specs.razie.com/wiki/Story:expr_story for possible expressions and examples