Enki Operators
(Back to Syntax Guide)
Extended EBNF Operators
Enki also provides a series of Extended operators that use D constructs, bindings and EBNF productions in order to support a wider arrange of parsing tasks that mere bindings and EBNF can allow. These allow for idioms and techniques that are unique to Enki.
- Negation is the "!" prefix operator.
- Testing is performed by the "/" operator (does not advance the parser through the file on success)
AnythingButX ::= !x;
TryThis ::= /y;
# test and negate are usually used together as a "non-consuming terminator" for repetition:
Foobar ::= {"foo"} /!"bar" "barred";
