Table of Contents

Class ExpressionVisitor

Namespace
MongoDB.Bson.Serialization
Assembly
MongoDB.Bson.dll

An abstract base class for an Expression visitor.

public abstract class ExpressionVisitor
Inheritance
ExpressionVisitor
Derived
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 ReadOnlyCollection<Expression> Visit(ReadOnlyCollection<Expression> nodes)

Parameters

nodes ReadOnlyCollection<Expression>

The Expression list.

Returns

ReadOnlyCollection<Expression>

The Expression list (possibly modified).

Visit(Expression)

Visits an Expression.

protected virtual Expression Visit(Expression node)

Parameters

node Expression

The Expression.

Returns

Expression

The Expression (posibly modified).

VisitBinary(BinaryExpression)

Visits a BinaryExpression.

protected virtual Expression VisitBinary(BinaryExpression node)

Parameters

node BinaryExpression

The BinaryExpression.

Returns

Expression

The BinaryExpression (possibly modified).

VisitConditional(ConditionalExpression)

Visits a ConditionalExpression.

protected virtual Expression VisitConditional(ConditionalExpression node)

Parameters

node ConditionalExpression

The ConditionalExpression.

Returns

Expression

The ConditionalExpression (possibly modified).

VisitConstant(ConstantExpression)

Visits a ConstantExpression.

protected virtual Expression VisitConstant(ConstantExpression node)

Parameters

node ConstantExpression

The ConstantExpression.

Returns

Expression

The ConstantExpression (possibly modified).

VisitElementInit(ElementInit)

Visits an ElementInit.

protected virtual ElementInit VisitElementInit(ElementInit node)

Parameters

node ElementInit

The ElementInit.

Returns

ElementInit

The ElementInit (possibly modified).

VisitElementInitList(ReadOnlyCollection<ElementInit>)

Visits an ElementInit list.

protected virtual IEnumerable<ElementInit> VisitElementInitList(ReadOnlyCollection<ElementInit> nodes)

Parameters

nodes ReadOnlyCollection<ElementInit>

The ElementInit list.

Returns

IEnumerable<ElementInit>

The ElementInit list (possibly modified).

VisitInvocation(InvocationExpression)

Visits an InvocationExpression.

protected virtual Expression VisitInvocation(InvocationExpression node)

Parameters

node InvocationExpression

The InvocationExpression.

Returns

Expression

The InvocationExpression (possibly modified).

VisitLambda(LambdaExpression)

Visits a LambdaExpression.

protected virtual Expression VisitLambda(LambdaExpression node)

Parameters

node LambdaExpression

The LambdaExpression.

Returns

Expression

The LambdaExpression (possibly modified).

VisitListInit(ListInitExpression)

Visits a ListInitExpression.

protected virtual Expression VisitListInit(ListInitExpression node)

Parameters

node ListInitExpression

The ListInitExpression.

Returns

Expression

The ListInitExpression (possibly modified).

VisitMember(MemberExpression)

Visits a MemberExpression.

protected virtual Expression VisitMember(MemberExpression node)

Parameters

node MemberExpression

The MemberExpression.

Returns

Expression

The MemberExpression (possibly modified).

VisitMemberAssignment(MemberAssignment)

Visits a MemberAssignment.

protected virtual MemberAssignment VisitMemberAssignment(MemberAssignment node)

Parameters

node MemberAssignment

The MemberAssignment.

Returns

MemberAssignment

The MemberAssignment (possibly modified).

VisitMemberBinding(MemberBinding)

Visits a MemberBinding.

protected virtual MemberBinding VisitMemberBinding(MemberBinding node)

Parameters

node MemberBinding

The MemberBinding.

Returns

MemberBinding

The MemberBinding (possibly modified).

VisitMemberBindingList(ReadOnlyCollection<MemberBinding>)

Visits a MemberBinding list.

protected virtual IEnumerable<MemberBinding> VisitMemberBindingList(ReadOnlyCollection<MemberBinding> nodes)

Parameters

nodes ReadOnlyCollection<MemberBinding>

The MemberBinding list.

Returns

IEnumerable<MemberBinding>

The MemberBinding list (possibly modified).

VisitMemberInit(MemberInitExpression)

Visits a MemberInitExpression.

protected virtual Expression VisitMemberInit(MemberInitExpression node)

Parameters

node MemberInitExpression

The MemberInitExpression.

Returns

Expression

The MemberInitExpression (possibly modified).

VisitMemberListBinding(MemberListBinding)

Visits a MemberListBinding.

protected virtual MemberListBinding VisitMemberListBinding(MemberListBinding node)

Parameters

node MemberListBinding

The MemberListBinding.

Returns

MemberListBinding

The MemberListBinding (possibly modified).

VisitMemberMemberBinding(MemberMemberBinding)

Visits a MemberMemberBinding.

protected virtual MemberMemberBinding VisitMemberMemberBinding(MemberMemberBinding node)

Parameters

node MemberMemberBinding

The MemberMemberBinding.

Returns

MemberMemberBinding

The MemberMemberBinding (possibly modified).

VisitMethodCall(MethodCallExpression)

Visits a MethodCallExpression.

protected virtual Expression VisitMethodCall(MethodCallExpression node)

Parameters

node MethodCallExpression

The MethodCallExpression.

Returns

Expression

The MethodCallExpression (possibly modified).

VisitNew(NewExpression)

Visits a NewExpression.

protected virtual NewExpression VisitNew(NewExpression node)

Parameters

node NewExpression

The NewExpression.

Returns

NewExpression

The NewExpression (possibly modified).

VisitNewArray(NewArrayExpression)

Visits a NewArrayExpression.

protected virtual Expression VisitNewArray(NewArrayExpression node)

Parameters

node NewArrayExpression

The NewArrayExpression.

Returns

Expression

The NewArrayExpression (possibly modified).

VisitParameter(ParameterExpression)

Visits a ParameterExpression.

protected virtual Expression VisitParameter(ParameterExpression node)

Parameters

node ParameterExpression

The ParameterExpression.

Returns

Expression

The ParameterExpression (possibly modified).

VisitTypeBinary(TypeBinaryExpression)

Visits a TypeBinaryExpression.

protected virtual Expression VisitTypeBinary(TypeBinaryExpression node)

Parameters

node TypeBinaryExpression

The TypeBinaryExpression.

Returns

Expression

The TypeBinaryExpression (possibly modified).

VisitUnary(UnaryExpression)

Visits a UnaryExpression.

protected virtual Expression VisitUnary(UnaryExpression node)

Parameters

node UnaryExpression

The UnaryExpression.

Returns

Expression

The UnaryExpression (possibly modified).