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
compilerIExpressionCompilerExpression compiler used to compile predicate source code.
Exceptions
- ArgumentNullException
Thrown when
compilerisnull.
Methods
Evaluate(SemanticPredicateEvaluationContext)
Evaluates the semantic predicate described by context.
public SemanticPredicateEvaluationOutcome Evaluate(SemanticPredicateEvaluationContext context)
Parameters
contextSemanticPredicateEvaluationContextPredicate 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.