Interface IEvaluatorFactory
Interface representing a factory for evaluators of members and expressions.
Namespace: System.Linq.Expressions
Assembly: Nuqleon.Linq.Expressions.Optimizers.dll
Syntax
public interface IEvaluatorFactory
Methods
GetEvaluator(BinaryExpression)
Get an evaluator delegate for the specified binary expression template. The operands of the template expression will be substituted for the parameters passed in to the evaluator.
Declaration
Func<object, object, object> GetEvaluator(BinaryExpression node)
Parameters
Type | Name | Description |
---|---|---|
System.Linq.Expressions.BinaryExpression | node | The binary expression template to build an evaluator for. |
Returns
Type | Description |
---|---|
System.Func<System.Object, System.Object, System.Object> | An evaluator delegate to evaluate the specified parameterized binary expression. |
GetEvaluator(Expression)
Gets an evaluator delegate for the specified expression
that's free of parameters.
Declaration
Func<object> GetEvaluator(Expression expression)
Parameters
Type | Name | Description |
---|---|---|
System.Linq.Expressions.Expression | expression | The expression to get an evaluator delegate for. |
Returns
Type | Description |
---|---|
System.Func<System.Object> | A delegate that returns an System.Object with the result of evaluating the expression. |
GetEvaluator(UnaryExpression)
Get an evaluator delegate for the specified unary expression template. The operand of the template expression will be substituted for the parameter passed in to the evaluator.
Declaration
Func<object, object> GetEvaluator(UnaryExpression node)
Parameters
Type | Name | Description |
---|---|---|
System.Linq.Expressions.UnaryExpression | node | The unary expression template to build an evaluator for. |
Returns
Type | Description |
---|---|
System.Func<System.Object, System.Object> | An evaluator delegate to evaluate the specified parameterized unary expression. |
GetEvaluator(MemberInfo)
Gets an evaluator delegate for the specified member
.
Declaration
Delegate GetEvaluator(MemberInfo member)
Parameters
Type | Name | Description |
---|---|---|
System.Reflection.MemberInfo | member | The member to get an evaluator delegate for. |
Returns
Type | Description |
---|---|
System.Delegate | An evaluator delegate for the specified |