Pidgin

Namespace Pidgin.Expression

Classes

ExpressionParser

Contains tools for parsing expression languages with associative infix operators.

To get started, write a Parser<TToken, T>, to parse an atomic term in your expression language, and use the Operator class to create a table of operator parsers in order of their precedence. Then call one of the Build<TToken, T>(Parser<TToken, T>, IEnumerable<OperatorTableRow<TToken, T>>) overloads to compile the table of operators into a Parser<TToken, T>.

Operator

Methods to create OperatorTableRow<TToken, T> values.

OperatorTableRow<TToken, T>

Represents a row in a table of operators. Contains a collection of parsers for operators at a single precendence level.

Enums

BinaryOperatorType

The associativity of the binary operator: left-associative, right-associative, or non-associative.

UnaryOperatorType

The type of the unary operator: prefix or postfix.