expression

< Back


ParserBuilder

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 ObjectParserBuilder
Attributes NullableContextAttribute, NullableAttribute

Constructors

ParserBuilder()

public ParserBuilder()

Methods

AddFactory(IExpressionFactory<IToken>)

Adds a custom expression factory to the parser configuration.

public ParserBuilder AddFactory(IExpressionFactory<IToken> factory)

Parameters

factory IExpressionFactory<IToken>
The factory to add for parsing specific token types.

Returns

ParserBuilder
This ParserBuilder instance for method chaining.

AddValueNodeFactories(Boolean)

Adds standard value node factories (literals and variables) to the parser.

public ParserBuilder AddValueNodeFactories(bool caseSensitive)

Parameters

caseSensitive Boolean
Whether parsing should be case-sensitive.

Returns

ParserBuilder
This ParserBuilder instance for method chaining.

AddInfixFactories(Boolean)

Adds infix operation factories (binary operators like +, -, *, etc.) to the parser.

public ParserBuilder AddInfixFactories(bool caseSensitive)

Parameters

caseSensitive Boolean
Whether parsing should be case-sensitive.

Returns

ParserBuilder
This ParserBuilder instance for method chaining.

AddUnaryFactories()

Adds unary operation factories (unary operators like +x, -x) to the parser.

public ParserBuilder AddUnaryFactories()

Returns

ParserBuilder
This ParserBuilder instance for method chaining.

AddGenericPrefixFactory(Boolean)

Adds a comprehensive set of built-in prefix functions to the parser.

public ParserBuilder AddGenericPrefixFactory(bool caseSensitive)

Parameters

caseSensitive Boolean
Whether parsing should be case-sensitive.

Returns

ParserBuilder
This ParserBuilder instance for method chaining.

AddNamedPrefixFactories(Boolean)

Adds named prefix expression factories that require specific syntax.

public ParserBuilder AddNamedPrefixFactories(bool caseSensitive)

Parameters

caseSensitive Boolean
Whether parsing should be case-sensitive.

Returns

ParserBuilder
This ParserBuilder instance for method chaining.

AddDefault(Boolean)

Adds all standard expression parsing capabilities (values, infix, unary, and prefix operations).

public ParserBuilder AddDefault(bool caseSensitive)

Parameters

caseSensitive Boolean
Whether parsing should be case-sensitive.

Returns

ParserBuilder
This ParserBuilder instance for method chaining.

BuildDefault(Boolean)

Creates a Parser instance with all default parsing capabilities enabled.

public Parser BuildDefault(bool caseSensitive)

Parameters

caseSensitive Boolean
Whether parsing should be case-sensitive.

Returns

Parser
A fully configured Parser instance.


< Back