Appendix: Construct Index

A quick lookup from every keyword, operator, and notation in the grammar language to the chapter that documents it. Settings have their own complete listing in Settings Reference.

Lexical

Construct

Documented in

TOKEN / REGULAR_TOKEN, SKIP, MORE, UNPARSED / SPECIAL_TOKEN, CONTEXTUAL

Lexical Specification

<NAME : > token, <NAME> reference, <EOF>

Lexical Specification

<#NAME> private regular expression

Lexical Specification

<?NAME> lazy token

Advanced Tokenization

character classes [ ] and negation ~[ ]

Lexical Specification

[IGNORE_CASE] modifier

Lexical Specification

lexical states < STATE > / < * > and the : NEXT_STATE switch

Lexical Specification

#ClassName token node class

Lexical Specification

Productions and expansions

Construct

Documented in

production Name : expansion ;

Productions and Expansions

terminals ("literal", <NAME>) and non-terminals

Productions and Expansions

choice |, grouping ( ), ( )*, ( )+, ( )?, [ ]

Productions and Expansions

embedded code actions { }

Productions and Expansions

access modifiers, return types, parameters, throws

Productions and Expansions

Lookahead, predicates, and assertions

Construct

Documented in

SCAN and the => separator

Disambiguation

up-to-here markers =>|| and =>|+n

Disambiguation

contextual predicates \ \ / / / (with ~, ., ...)

Disambiguation

ASSERT, ENSURE

Disambiguation

FAIL

Disambiguation

Tree building

Construct

Documented in

node descriptors #Name, #void, #abstract, #interface

Tree Building

conditional node descriptor #Name( )

Tree Building

cardinality constraint & &

Tree Building

Code injection and composition

Construct

Documented in

INJECT

Code Injection

hooks TOKEN_HOOK, OPEN_NODE_HOOK, CLOSE_NODE_HOOK, RESET_TOKEN_HOOK

Code Injection

INCLUDE

The Grammar File

preprocessor #if / #elif / #else / #endif / #define / #undef

The Grammar File

Advanced tokenization

Construct

Documented in

ACTIVATE_TOKENS, DEACTIVATE_TOKENS, ACTIVE_TOKENS

Advanced Tokenization

UNCACHE_TOKENS

Advanced Tokenization

Fault tolerance

Construct

Documented in

tolerant markers ! and !->

Fault-Tolerant Parsing

ATTEMPT / RECOVER

Fault-Tolerant Parsing

RECOVER_TO

Fault-Tolerant Parsing