Namespace: Albatross.Expression.Parsing
Builder class for creating Parser instances with customizable token factories. Provides fluent interface for configuring different types of expression parsing capabilities.
public class ParserBuilder
Inheritance Object → ParserBuilder
Attributes NullableContextAttribute, NullableAttribute
public ParserBuilder()
Adds a custom expression factory to the parser configuration.
public ParserBuilder AddFactory(IExpressionFactory<IToken> factory)
factory
IExpressionFactory<IToken>
The factory to add for parsing specific token types.
ParserBuilder
This ParserBuilder instance for method chaining.
Adds standard value node factories (literals and variables) to the parser.
public ParserBuilder AddValueNodeFactories(bool caseSensitive)
caseSensitive
Boolean
Whether parsing should be case-sensitive.
ParserBuilder
This ParserBuilder instance for method chaining.
Adds infix operation factories (binary operators like +, -, *, etc.) to the parser.
public ParserBuilder AddInfixFactories(bool caseSensitive)
caseSensitive
Boolean
Whether parsing should be case-sensitive.
ParserBuilder
This ParserBuilder instance for method chaining.
Adds unary operation factories (unary operators like +x, -x) to the parser.
public ParserBuilder AddUnaryFactories()
ParserBuilder
This ParserBuilder instance for method chaining.
Adds a comprehensive set of built-in prefix functions to the parser.
public ParserBuilder AddGenericPrefixFactory(bool caseSensitive)
caseSensitive
Boolean
Whether parsing should be case-sensitive.
ParserBuilder
This ParserBuilder instance for method chaining.
Adds named prefix expression factories that require specific syntax.
public ParserBuilder AddNamedPrefixFactories(bool caseSensitive)
caseSensitive
Boolean
Whether parsing should be case-sensitive.
ParserBuilder
This ParserBuilder instance for method chaining.
Adds all standard expression parsing capabilities (values, infix, unary, and prefix operations).
public ParserBuilder AddDefault(bool caseSensitive)
caseSensitive
Boolean
Whether parsing should be case-sensitive.
ParserBuilder
This ParserBuilder instance for method chaining.
Creates a Parser instance with all default parsing capabilities enabled.
public Parser BuildDefault(bool caseSensitive)
caseSensitive
Boolean
Whether parsing should be case-sensitive.
Parser
A fully configured Parser instance.