Package com.github.adriantodt.tartar.api.parser

Types

Grammar
Link copied to clipboard
common
data class Grammar<T, E>(prefixParsers: Map<T, PrefixParser<T, E>>, infixParsers: Map<T, InfixParser<T, E>>)
A grammar for pratt-parsers.
InfixParser
Link copied to clipboard
common
interface InfixParser<T, E>
A interface for infix-based parsing, with support to precedence.
Parser
Link copied to clipboard
common
interface Parser<T, E, R>
Reads tokens from a list and parses it with a pratt-parser.
ParserContext
Link copied to clipboard
common
interface ParserContext<T, E>
A parsing context, created by a Parser.parse call, which exposes an interface for pratt-parsing.
PrefixParser
Link copied to clipboard
common
interface PrefixParser<T, E>
A interface for prefix-based parsing.
SyntaxException
Link copied to clipboard
common
open class SyntaxException(message: String, position: Section) : RuntimeException
Indicates that a syntax exception happened.
Token
Link copied to clipboard
common
data class Token<T>(type: T, value: String, section: Section) : Sectional
A Parser token.