Info.SymbolSourceDiscriminated union of terminal and nonterminal indices
Returns the symbol as a discriminated union: T for terminals, N for non-terminals
Returns true if the symbol is a terminal
Returns true if the symbol is a non-terminal
Converts a symbol index to its name string. With mangled:true, returns the mangled name used internally by Menhir.
semantic_value s returns the semantic value type of symbol s. Returns Some "unit" for unparameterized terminals.
all g is the set of all symbols (terminals and non-terminals) in grammar g
Inject a terminal index into the symbol index space
Inject a nonterminal index into the symbol index space
val find :
'g grammar ->
?approx:int ->
string ->
('g n Fix.Indexing.index,
[ `Mangled of 'g nonterminal Fix.Indexing.index
| `Dym of (int * string * 'g n Fix.Indexing.index) list ])
Stdlib.resultFinds a symbol (terminal or nonterminal) by name. Checks both regular and mangled names. Returns disambiguation suggestions when the name is not found and approx > 0.