Tagged union for different nonterminals, which is used internally by the parser. The union can allow more nonterminals than necessary, which can reduce template bloat.
Tagged union of all possible nonterminals, which is used internally by the parser.
Called for the outermost tree node after parsing. It adjusts the start location if it is stored as the offset from the parent node.
Create a tree node for one production.
Creates a special tree node, which contains different ambiguous trees as childs. This is used by GLR parsers. It will only be called by the parser if canMerge!nonterminalID is true.
Type used for nonterminal with ID nonterminalID.
Determines if nonterminals with ID nonterminalID can be merged into a single tree node for ambiguities with the GLR parser. Function mergeParseTrees may be called for them.
Create a tree node for multiple productions, which are treated as the same. This is used with the generator option --combinedreduce.
Alias to the module with parser and information about the grammar.
Type of location in source file.
Template for determining how location ranges are stored (start + length, start + end, ...).
Class for creating trees during parsing.