Show / Hide Table of Contents

Class DefaultEvaluatorFactory

Factory for member invocation delegates.

Inheritance
System.Object
DefaultEvaluatorFactory
MemoizingEvaluatorFactory
Implements
IEvaluatorFactory
Namespace: System.Linq.Expressions
Assembly: Nuqleon.Linq.Expressions.Optimizers.dll
Syntax
public class DefaultEvaluatorFactory : Object, IEvaluatorFactory

Constructors

DefaultEvaluatorFactory()

Declaration
public DefaultEvaluatorFactory()

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
public virtual 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
public virtual 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(Expression, ParameterExpression[])

Get an evaluator delegate using the specified body and parameters to compile an evaluation lambda.

Declaration
public virtual Delegate GetEvaluator(Expression body, params ParameterExpression[] parameters)
Parameters
Type Name Description
System.Linq.Expressions.Expression body

The body of the evaluation lambda.

System.Linq.Expressions.ParameterExpression[] parameters

The parameters of the evaluation lambda.

Returns
Type Description
System.Delegate

An evaluation delegate.

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
public virtual 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(ConstructorInfo)

Gets an evaluator delegate for the specified constructor.

Declaration
public virtual Delegate GetEvaluator(ConstructorInfo constructor)
Parameters
Type Name Description
System.Reflection.ConstructorInfo constructor

The constructor to get an evaluator delegate for.

Returns
Type Description
System.Delegate

An evaluator delegate for the specified constructor.

GetEvaluator(FieldInfo)

Gets an evaluator delegate for the specified field.

Declaration
public virtual Delegate GetEvaluator(FieldInfo field)
Parameters
Type Name Description
System.Reflection.FieldInfo field

The field to get an evaluator delegate for.

Returns
Type Description
System.Delegate

An evaluator delegate for the specified field.

GetEvaluator(MemberInfo)

Gets an evaluator delegate for the specified member.

Declaration
public virtual 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 member.

GetEvaluator(MethodInfo)

Gets an evaluator delegate for the specified method.

Declaration
public virtual Delegate GetEvaluator(MethodInfo method)
Parameters
Type Name Description
System.Reflection.MethodInfo method

The method to get an evaluator delegate for.

Returns
Type Description
System.Delegate

An evaluator delegate for the specified method.

GetEvaluator(PropertyInfo)

Gets an evaluator delegate for the specified property.

Declaration
public virtual Delegate GetEvaluator(PropertyInfo property)
Parameters
Type Name Description
System.Reflection.PropertyInfo property

The method to get an evaluator delegate for.

Returns
Type Description
System.Delegate

An evaluator delegate for the specified property.

GetEvaluator(Type)

Gets an evaluator delegate to create an instance of the specified type.

Declaration
public virtual Delegate GetEvaluator(Type type)
Parameters
Type Name Description
System.Type type

The type to get an instantiation evaluator delegate for.

Returns
Type Description
System.Delegate

An evaluator delegate to create an instance of the specified type.

Implements

IEvaluatorFactory
In This Article
Back to top Generated by DocFX