GrammarDSL

interface GrammarDSL<T, E>

A builder of Grammars, as a domain-specific language (DSL).

Author

AdrianTodt

Parameters

T

The grammar's token type.

E

The grammar's expression result.

Functions

import
Link copied to clipboard
common
abstract fun import(override: Boolean = false, vararg grammars: Grammar<T, E>)
Imports all parselets from other grammars.
infix
Link copied to clipboard
common
abstract fun infix(type: T, parselet: InfixParser<T, E>, override: Boolean = false)
Registers a infix parselets into the grammar.
abstract fun infix(type: T, precedence: Int, override: Boolean = false, block: InfixFunction<T, E>)
Registers a infix parselets into the grammar.
prefix
Link copied to clipboard
common
abstract fun prefix(type: T, parselet: PrefixParser<T, E>, override: Boolean = false)
Registers a prefix parselets into the grammar.
abstract fun prefix(type: T, override: Boolean = false, block: PrefixFunction<T, E>)
Registers a prefix parselets into the grammar.

Inheritors

GrammarBuilder
Link copied to clipboard