Namespace RandomizerCore.StringParsing
Classes
- ExpressionParser<T>
Parses IExpression<T>s from a stream of Tokens.
- ExpressionValidator<T>
Provides typing validation and error aggregation for IExpression<T>s
- GroupingExpression<T>
A parenthesized nested expression.
- InfixExpression<T>
An infix expression (infix operator applied between 2 nested expressions)
- NameToken
Token representing a named symbol, e.g. a term, logic variable, item name, etc.
- NumberToken
Token representing a number literal
- OperatorToken
Token representing a unary or binary operator
- PostfixExpression<T>
A postfix expression (postfix operator applied to a nested expression)
- PrefixExpression<T>
A prefix expression (prefix operator applied to a nested expression)
- StringToken
Token representing a string literal
- StructuralToken
Token representing a structural element, e.g. parentheses or braces
Interfaces
- IExpressionFactory<T>
Factory to produce domain specific expressions during parsing. Should support operators as defined by a paired IOperatorProvider
- IExpression<T>
An expression with results constrained by the set T
- IOperatorProvider
Defines domain-specific operator definitions.