Table of Contents

Class ExpressionVisitor<T>

Namespace
MongoDB.Driver.Linq
Assembly
MongoDB.Driver.Legacy.dll

An abstract base class for an Expression visitor that returns a value of type T.

public abstract class ExpressionVisitor<T>

Type Parameters

T

The type of the return value.

Inheritance
ExpressionVisitor<T>
Inherited Members
Extension Methods

Constructors

ExpressionVisitor()

Initializes a new instance of the ExpressionVisitor class.

protected ExpressionVisitor()

Methods

Visit(ReadOnlyCollection<Expression>)

Visits an Expression list.

protected T Visit(ReadOnlyCollection<Expression> nodes)

Parameters

nodes ReadOnlyCollection<Expression>

The Expression list.

Returns

T

The result of visiting the Expressions.

Visit(Expression)

Visits an Expression.

protected virtual T Visit(Expression node)

Parameters

node Expression

The Expression.

Returns

T

The result of visiting the Expression.

VisitBinary(BinaryExpression)

Visits a BinaryExpression.

protected virtual T VisitBinary(BinaryExpression node)

Parameters

node BinaryExpression

The BinaryExpression.

Returns

T

The result of visiting the Expression.

VisitConditional(ConditionalExpression)

Visits a ConditionalExpression.

protected virtual T VisitConditional(ConditionalExpression node)

Parameters

node ConditionalExpression

The ConditionalExpression.

Returns

T

The result of visiting the Expression.

VisitConstant(ConstantExpression)

Visits a ConstantExpression.

protected virtual T VisitConstant(ConstantExpression node)

Parameters

node ConstantExpression

The ConstantExpression.

Returns

T

The result of visiting the Expression.

VisitElementInit(ElementInit)

Visits an ElementInit.

protected virtual T VisitElementInit(ElementInit node)

Parameters

node ElementInit

The ElementInit.

Returns

T

The result of visiting the Expression.

VisitElementInitList(ReadOnlyCollection<ElementInit>)

Visits an ElementInit list.

protected T VisitElementInitList(ReadOnlyCollection<ElementInit> nodes)

Parameters

nodes ReadOnlyCollection<ElementInit>

The ElementInit list.

Returns

T

The result of visiting the Expressions.

VisitInvocation(InvocationExpression)

Visits an InvocationExpression.

protected virtual T VisitInvocation(InvocationExpression node)

Parameters

node InvocationExpression

The InvocationExpression.

Returns

T

The result of visiting the Expression.

VisitLambda(LambdaExpression)

Visits a LambdaExpression.

protected virtual T VisitLambda(LambdaExpression node)

Parameters

node LambdaExpression

The LambdaExpression.

Returns

T

The result of visiting the Expression.

VisitListInit(ListInitExpression)

Visits a ListInitExpression.

protected virtual T VisitListInit(ListInitExpression node)

Parameters

node ListInitExpression

The ListInitExpression.

Returns

T

The result of visiting the Expression.

VisitMember(MemberExpression)

Visits a MemberExpression.

protected virtual T VisitMember(MemberExpression node)

Parameters

node MemberExpression

The MemberExpression.

Returns

T

The result of visiting the Expression.

VisitMemberAssignment(MemberAssignment)

Visits a MemberAssignment.

protected virtual T VisitMemberAssignment(MemberAssignment node)

Parameters

node MemberAssignment

The MemberAssignment.

Returns

T

The result of visiting the Expression.

VisitMemberBinding(MemberBinding)

Visits a MemberBinding.

protected virtual T VisitMemberBinding(MemberBinding node)

Parameters

node MemberBinding

The MemberBinding.

Returns

T

The result of visiting the Expression.

VisitMemberBindingList(ReadOnlyCollection<MemberBinding>)

Visits a MemberBinding list.

protected virtual T VisitMemberBindingList(ReadOnlyCollection<MemberBinding> nodes)

Parameters

nodes ReadOnlyCollection<MemberBinding>

The MemberBinding list.

Returns

T

The result of visiting the Expression.

VisitMemberInit(MemberInitExpression)

Visits a MemberInitExpression.

protected virtual T VisitMemberInit(MemberInitExpression node)

Parameters

node MemberInitExpression

The MemberInitExpression.

Returns

T

The result of visiting the Expression.

VisitMemberListBinding(MemberListBinding)

Visits a MemberListBinding.

protected virtual T VisitMemberListBinding(MemberListBinding node)

Parameters

node MemberListBinding

The MemberListBinding.

Returns

T

The result of visiting the Expression.

VisitMemberMemberBinding(MemberMemberBinding)

Visits a MemberMemberBinding.

protected virtual T VisitMemberMemberBinding(MemberMemberBinding node)

Parameters

node MemberMemberBinding

The MemberMemberBinding.

Returns

T

The result of visiting the Expression.

VisitMethodCall(MethodCallExpression)

Visits a MethodCallExpression.

protected virtual T VisitMethodCall(MethodCallExpression node)

Parameters

node MethodCallExpression

The MethodCallExpression.

Returns

T

The result of visiting the Expression.

VisitNew(NewExpression)

Visits a NewExpression.

protected virtual T VisitNew(NewExpression node)

Parameters

node NewExpression

The NewExpression.

Returns

T

The result of visiting the Expression.

VisitNewArray(NewArrayExpression)

Visits a NewArrayExpression.

protected virtual T VisitNewArray(NewArrayExpression node)

Parameters

node NewArrayExpression

The NewArrayExpression.

Returns

T

The result of visiting the Expression.

VisitParameter(ParameterExpression)

Visits a ParameterExpression.

protected virtual T VisitParameter(ParameterExpression node)

Parameters

node ParameterExpression

The ParameterExpression.

Returns

T

The result of visiting the Expression.

VisitTypeBinary(TypeBinaryExpression)

Visits a TypeBinaryExpression.

protected virtual T VisitTypeBinary(TypeBinaryExpression node)

Parameters

node TypeBinaryExpression

The TypeBinaryExpression.

Returns

T

The result of visiting the Expression.

VisitUnary(UnaryExpression)

Visits a UnaryExpression.

protected virtual T VisitUnary(UnaryExpression node)

Parameters

node UnaryExpression

The UnaryExpression.

Returns

T

The result of visiting the Expression.