Optional options: BuildOptionsOptional ctxBuilder: DefinitionContextBuilder<T>Declare top-level NT's.
Rest ...defs: string[]Generate resolvers to make these definitions left-self-associative.
// 1 - 2 - 3 means (1 - 2) - 3 instead of 1 - (2 - 3)
builder.leftSA({ exp: `exp '-' exp` })
Rest ...defs: Parser.ELR.Definition[]Generate resolvers to implement grammar rules' priorities.
// gr1 > gr2 = gr3
builder.priority(gr1, [gr2, gr3])
Grammar rules with higher priority will always be reduced first, and grammar rules with the same priority will be reduced from left to right.
Rest ...defs: (Parser.ELR.Definition | Parser.ELR.Definition[])[]Resolve a reduce-reduce conflict.
Resolve a reduce-shift conflict.
Generate resolvers to make these definitions right-self-associative.
// a = b = 1 means a = (b = 1) instead of (a = b) = 1
builder.rightSA({ exp: `var '=' exp` })
Rest ...defs: Parser.ELR.Definition[]Apply a function to this builder.
Generated using TypeDoc
Generate the ELR parser.