Table of Contents

Class ExpressionSemanticPredicateEvaluator

Namespace
Utils.Parser.Expressions
Assembly
Utils.Parser.Expressions.dll

Adapts an IExpressionCompiler to ISemanticPredicateEvaluator for runtime semantic predicate evaluation.

public sealed class ExpressionSemanticPredicateEvaluator : ISemanticPredicateEvaluator
Inheritance
ExpressionSemanticPredicateEvaluator
Implements
Inherited Members
Extension Methods

Constructors

ExpressionSemanticPredicateEvaluator(IExpressionCompiler)

Initializes a new evaluator that compiles semantic predicate source code with the provided compiler.

public ExpressionSemanticPredicateEvaluator(IExpressionCompiler compiler)

Parameters

compiler IExpressionCompiler

Expression compiler used to compile predicate source code.

Exceptions

ArgumentNullException

Thrown when compiler is null.

Methods

Evaluate(SemanticPredicateEvaluationContext)

Evaluates the semantic predicate described by context.

public SemanticPredicateEvaluationOutcome Evaluate(SemanticPredicateEvaluationContext context)

Parameters

context SemanticPredicateEvaluationContext

Predicate metadata and parser location.

Returns

SemanticPredicateEvaluationOutcome

Evaluation outcome controlling branch acceptance. Implementations are expected to remain deterministic for identical invocation context when memoization is enabled.