Class ExpressionSlimVisitor<TExpression, TLambdaExpression, TParameterExpression, TNewExpression, TElementInit, TMemberBinding, TMemberAssignment, TMemberListBinding, TMemberMemberBinding, TCatchBlock, TSwitchCase, TLabelTarget>
Expression visitor to rewrite an expression tree into a target type.
Inheritance
Inherited Members
Namespace: System.Linq.Expressions
Assembly: Nuqleon.Linq.Expressions.Bonsai.dll
Syntax
public abstract class ExpressionSlimVisitor<TExpression, TLambdaExpression, TParameterExpression, TNewExpression, TElementInit, TMemberBinding, TMemberAssignment, TMemberListBinding, TMemberMemberBinding, TCatchBlock, TSwitchCase, TLabelTarget> : ExpressionSlimVisitor<TExpression> where TLambdaExpression : TExpression where TParameterExpression : TExpression where TNewExpression : TExpression where TMemberAssignment : TMemberBinding where TMemberListBinding : TMemberBinding where TMemberMemberBinding : TMemberBinding
Type Parameters
Name | Description |
---|---|
TExpression | Target type for expressions. |
TLambdaExpression | Target type for lambda expressions. This type has to derive from TExpression. |
TParameterExpression | Target type for parameter expressions. This type has to derive from TExpression. |
TNewExpression | Target type for new expressions. This type has to derive from TExpression. |
TElementInit | Target type for element initializers. |
TMemberBinding | Target type for member bindings. |
TMemberAssignment | Target type for member assignments. This type has to derive from TMemberBinding. |
TMemberListBinding | Target type for member list bindings. This type has to derive from TMemberBinding. |
TMemberMemberBinding | Target type for member member bindings. This type has to derive from TMemberBinding. |
TCatchBlock | Target type for catch blocks. |
TSwitchCase | Target type for switch cases. |
TLabelTarget | Target type for label targets. |
Constructors
ExpressionSlimVisitor()
Declaration
protected ExpressionSlimVisitor()
Methods
MakeBinary(BinaryExpressionSlim, TExpression, TLambdaExpression, TExpression)
Makes an expression representing a BinaryExpression with the given children.
Declaration
protected abstract TExpression MakeBinary(BinaryExpressionSlim node, TExpression left, TLambdaExpression conversion, TExpression right)
Parameters
Type | Name | Description |
---|---|---|
BinaryExpressionSlim | node | Original expression. |
TExpression | left | Left expression. |
TLambdaExpression | conversion | Conversion expression. |
TExpression | right | Right expression. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeBlock(BlockExpressionSlim, ReadOnlyCollection<TParameterExpression>, ReadOnlyCollection<TExpression>)
Makes an expression representing a BlockExpression with the given children.
Declaration
protected abstract TExpression MakeBlock(BlockExpressionSlim node, ReadOnlyCollection<TParameterExpression> variables, ReadOnlyCollection<TExpression> expressions)
Parameters
Type | Name | Description |
---|---|---|
BlockExpressionSlim | node | Original expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TParameterExpression> | variables | Variables in the block. |
System.Collections.ObjectModel.ReadOnlyCollection<TExpression> | expressions | Expressions in the block. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeCatchBlock(CatchBlockSlim, TParameterExpression, TExpression, TExpression)
Makes a catch block object representing a CatchBlock with the given children.
Declaration
protected abstract TCatchBlock MakeCatchBlock(CatchBlockSlim node, TParameterExpression variable, TExpression body, TExpression filter)
Parameters
Type | Name | Description |
---|---|---|
CatchBlockSlim | node | Original catch block. |
TParameterExpression | variable | Variable expression. |
TExpression | body | Body expression. |
TExpression | filter | Filter expression. |
Returns
Type | Description |
---|---|
TCatchBlock | Representation of the original catch block. |
MakeConditional(ConditionalExpressionSlim, TExpression, TExpression, TExpression)
Makes an expression representing a ConditionalExpression with the given children.
Declaration
protected abstract TExpression MakeConditional(ConditionalExpressionSlim node, TExpression test, TExpression ifTrue, TExpression ifFalse)
Parameters
Type | Name | Description |
---|---|---|
ConditionalExpressionSlim | node | Original expression. |
TExpression | test | Test expression. |
TExpression | ifTrue | True branch expression. |
TExpression | ifFalse | False branch expression. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeConstant(ConstantExpressionSlim)
Makes an expression representing a ConstantExpression.
Declaration
protected abstract TExpression MakeConstant(ConstantExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
ConstantExpressionSlim | node | Original expression. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeDefault(DefaultExpressionSlim)
Makes an expression representing a DefaultExpression.
Declaration
protected abstract TExpression MakeDefault(DefaultExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
DefaultExpressionSlim | node | Original expression. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeElementInit(ElementInitSlim, ReadOnlyCollection<TExpression>)
Makes an element initializer object representing a ElementInit object with the given children.
Declaration
protected abstract TElementInit MakeElementInit(ElementInitSlim node, ReadOnlyCollection<TExpression> arguments)
Parameters
Type | Name | Description |
---|---|---|
ElementInitSlim | node | Original element initializer. |
System.Collections.ObjectModel.ReadOnlyCollection<TExpression> | arguments | Argument expressions. |
Returns
Type | Description |
---|---|
TElementInit | Representation of the original element initializer. |
MakeGoto(GotoExpressionSlim, TLabelTarget, TExpression)
Makes an expression representing a GotoExpression with the given children.
Declaration
protected abstract TExpression MakeGoto(GotoExpressionSlim node, TLabelTarget target, TExpression value)
Parameters
Type | Name | Description |
---|---|---|
GotoExpressionSlim | node | Original expression. |
TLabelTarget | target | Target label. |
TExpression | value | Value expression. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeIndex(IndexExpressionSlim, TExpression, ReadOnlyCollection<TExpression>)
Makes an expression representing a IndexExpression with the given children.
Declaration
protected abstract TExpression MakeIndex(IndexExpressionSlim node, TExpression object, ReadOnlyCollection<TExpression> arguments)
Parameters
Type | Name | Description |
---|---|---|
IndexExpressionSlim | node | Original expression. |
TExpression | object | Object expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TExpression> | arguments | Argument expressions. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeInvocation(InvocationExpressionSlim, TExpression, ReadOnlyCollection<TExpression>)
Makes an expression representing a InvocationExpression with the given children.
Declaration
protected abstract TExpression MakeInvocation(InvocationExpressionSlim node, TExpression expression, ReadOnlyCollection<TExpression> arguments)
Parameters
Type | Name | Description |
---|---|---|
InvocationExpressionSlim | node | Original expression. |
TExpression | expression | Function expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TExpression> | arguments | Argument expressions. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeLabel(LabelExpressionSlim, TLabelTarget, TExpression)
Makes an expression representing a LabelExpression with the given children.
Declaration
protected abstract TExpression MakeLabel(LabelExpressionSlim node, TLabelTarget target, TExpression defaultValue)
Parameters
Type | Name | Description |
---|---|---|
LabelExpressionSlim | node | Original expression. |
TLabelTarget | target | Target label. |
TExpression | defaultValue | Default value expression. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeLabelTarget(LabelTargetSlim)
Makes a label target object representing a LabelTarget.
Declaration
protected abstract TLabelTarget MakeLabelTarget(LabelTargetSlim node)
Parameters
Type | Name | Description |
---|---|---|
LabelTargetSlim | node | Original label target. |
Returns
Type | Description |
---|---|
TLabelTarget | Representation of the label target. |
MakeLambda(LambdaExpressionSlim, TExpression, ReadOnlyCollection<TParameterExpression>)
Makes an expression representing a LambdaExpression with the given children.
Declaration
protected abstract TLambdaExpression MakeLambda(LambdaExpressionSlim node, TExpression body, ReadOnlyCollection<TParameterExpression> parameters)
Parameters
Type | Name | Description |
---|---|---|
LambdaExpressionSlim | node | Original expression. |
TExpression | body | Body expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TParameterExpression> | parameters | Parameter expressions. |
Returns
Type | Description |
---|---|
TLambdaExpression | Representation of the original expression. |
MakeListInit(ListInitExpressionSlim, TNewExpression, ReadOnlyCollection<TElementInit>)
Makes an expression representing a ListInitExpression with the given children.
Declaration
protected abstract TExpression MakeListInit(ListInitExpressionSlim node, TNewExpression newExpression, ReadOnlyCollection<TElementInit> initializers)
Parameters
Type | Name | Description |
---|---|---|
ListInitExpressionSlim | node | Original expression. |
TNewExpression | newExpression | New expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TElementInit> | initializers | Element initializers. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeLoop(LoopExpressionSlim, TExpression, TLabelTarget, TLabelTarget)
Makes an expression representing a LoopExpression with the given children.
Declaration
protected abstract TExpression MakeLoop(LoopExpressionSlim node, TExpression body, TLabelTarget breakLabel, TLabelTarget continueLabel)
Parameters
Type | Name | Description |
---|---|---|
LoopExpressionSlim | node | Original expression. |
TExpression | body | Body expression. |
TLabelTarget | breakLabel | Break label. |
TLabelTarget | continueLabel | Continue label. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeMember(MemberExpressionSlim, TExpression)
Makes an expression representing a MemberExpression with the given children.
Declaration
protected abstract TExpression MakeMember(MemberExpressionSlim node, TExpression expression)
Parameters
Type | Name | Description |
---|---|---|
MemberExpressionSlim | node | Original expression. |
TExpression | expression | Object expression. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeMemberAssignment(MemberAssignmentSlim, TExpression)
Makes a member binding object representing a MemberAssignment with the given children.
Declaration
protected abstract TMemberAssignment MakeMemberAssignment(MemberAssignmentSlim node, TExpression expression)
Parameters
Type | Name | Description |
---|---|---|
MemberAssignmentSlim | node | Original member assignment. |
TExpression | expression | Assigned expression. |
Returns
Type | Description |
---|---|
TMemberAssignment | Representation of the original member assignment. |
MakeMemberInit(MemberInitExpressionSlim, TNewExpression, ReadOnlyCollection<TMemberBinding>)
Makes an expression representing a MemberInitExpression with the given children.
Declaration
protected abstract TExpression MakeMemberInit(MemberInitExpressionSlim node, TNewExpression newExpression, ReadOnlyCollection<TMemberBinding> bindings)
Parameters
Type | Name | Description |
---|---|---|
MemberInitExpressionSlim | node | Original expression. |
TNewExpression | newExpression | New expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TMemberBinding> | bindings | Member bindings. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeMemberListBinding(MemberListBindingSlim, ReadOnlyCollection<TElementInit>)
Makes a member binding object representing a MemberListBinding with the given children.
Declaration
protected abstract TMemberListBinding MakeMemberListBinding(MemberListBindingSlim node, ReadOnlyCollection<TElementInit> initializers)
Parameters
Type | Name | Description |
---|---|---|
MemberListBindingSlim | node | Original member list binding. |
System.Collections.ObjectModel.ReadOnlyCollection<TElementInit> | initializers | Element initializers. |
Returns
Type | Description |
---|---|
TMemberListBinding | Representation of the original member list binding. |
MakeMemberMemberBinding(MemberMemberBindingSlim, ReadOnlyCollection<TMemberBinding>)
Makes a member binding object representing a MemberMemberBinding with the given children.
Declaration
protected abstract TMemberMemberBinding MakeMemberMemberBinding(MemberMemberBindingSlim node, ReadOnlyCollection<TMemberBinding> bindings)
Parameters
Type | Name | Description |
---|---|---|
MemberMemberBindingSlim | node | Original member member binding. |
System.Collections.ObjectModel.ReadOnlyCollection<TMemberBinding> | bindings | Member bindings. |
Returns
Type | Description |
---|---|
TMemberMemberBinding | Representation of the original member member binding. |
MakeMethodCall(MethodCallExpressionSlim, TExpression, ReadOnlyCollection<TExpression>)
Makes an expression representing a MethodCallExpression with the given children.
Declaration
protected abstract TExpression MakeMethodCall(MethodCallExpressionSlim node, TExpression object, ReadOnlyCollection<TExpression> arguments)
Parameters
Type | Name | Description |
---|---|---|
MethodCallExpressionSlim | node | Original expression. |
TExpression | object | Object expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TExpression> | arguments | Argument expressions. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeNew(NewExpressionSlim, ReadOnlyCollection<TExpression>)
Makes an expression representing a NewExpression with the given children.
Declaration
protected abstract TExpression MakeNew(NewExpressionSlim node, ReadOnlyCollection<TExpression> arguments)
Parameters
Type | Name | Description |
---|---|---|
NewExpressionSlim | node | Original expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TExpression> | arguments | Argument expressions. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeNewArray(NewArrayExpressionSlim, ReadOnlyCollection<TExpression>)
Makes an expression representing a NewArrayExpression with the given children.
Declaration
protected abstract TExpression MakeNewArray(NewArrayExpressionSlim node, ReadOnlyCollection<TExpression> expressions)
Parameters
Type | Name | Description |
---|---|---|
NewArrayExpressionSlim | node | Original expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TExpression> | expressions | Child expressions. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeParameter(ParameterExpressionSlim)
Makes an expression representing a ParameterExpression.
Declaration
protected abstract TParameterExpression MakeParameter(ParameterExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
ParameterExpressionSlim | node | Original expression. |
Returns
Type | Description |
---|---|
TParameterExpression | Representation of the original expression. |
MakeSwitch(SwitchExpressionSlim, TExpression, TExpression, ReadOnlyCollection<TSwitchCase>)
Makes an expression representing a SwitchExpression with the given children.
Declaration
protected abstract TExpression MakeSwitch(SwitchExpressionSlim node, TExpression switchValue, TExpression defaultBody, ReadOnlyCollection<TSwitchCase> cases)
Parameters
Type | Name | Description |
---|---|---|
SwitchExpressionSlim | node | Original expression. |
TExpression | switchValue | Switch value expression. |
TExpression | defaultBody | Default body expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TSwitchCase> | cases | Switch cases. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeSwitchCase(SwitchCaseSlim, TExpression, ReadOnlyCollection<TExpression>)
Makes a switch case object representing a SwitchCase with the given children.
Declaration
protected abstract TSwitchCase MakeSwitchCase(SwitchCaseSlim node, TExpression body, ReadOnlyCollection<TExpression> testValues)
Parameters
Type | Name | Description |
---|---|---|
SwitchCaseSlim | node | Original switch case. |
TExpression | body | Body expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TExpression> | testValues | Test value expressions. |
Returns
Type | Description |
---|---|
TSwitchCase | Representation of the original switch case. |
MakeTry(TryExpressionSlim, TExpression, TExpression, TExpression, ReadOnlyCollection<TCatchBlock>)
Makes an expression representing a TryExpression with the given children.
Declaration
protected abstract TExpression MakeTry(TryExpressionSlim node, TExpression body, TExpression finally, TExpression fault, ReadOnlyCollection<TCatchBlock> handlers)
Parameters
Type | Name | Description |
---|---|---|
TryExpressionSlim | node | Original expression. |
TExpression | body | Body expression. |
TExpression | finally | Finally expression. |
TExpression | fault | Fault expression. |
System.Collections.ObjectModel.ReadOnlyCollection<TCatchBlock> | handlers | Catch handlers. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeTypeBinary(TypeBinaryExpressionSlim, TExpression)
Makes an expression representing a TypeBinaryExpression with the given children.
Declaration
protected abstract TExpression MakeTypeBinary(TypeBinaryExpressionSlim node, TExpression expression)
Parameters
Type | Name | Description |
---|---|---|
TypeBinaryExpressionSlim | node | Original expression. |
TExpression | expression | Child expression. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
MakeUnary(UnaryExpressionSlim, TExpression)
Makes an expression representing a UnaryExpression with the given children.
Declaration
protected abstract TExpression MakeUnary(UnaryExpressionSlim node, TExpression operand)
Parameters
Type | Name | Description |
---|---|---|
UnaryExpressionSlim | node | Original expression. |
TExpression | operand | Operand expression. |
Returns
Type | Description |
---|---|
TExpression | Representation of the original expression. |
Visit(ExpressionSlim)
Visits the specified expression and rewrites it to the target expression type.
Declaration
public override TExpression Visit(ExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
ExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitBinary(BinaryExpressionSlim)
Visits the children of the BinaryExpression.
Declaration
protected override TExpression VisitBinary(BinaryExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
BinaryExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitBlock(BlockExpressionSlim)
Visits the children of the BlockExpression.
Declaration
protected override TExpression VisitBlock(BlockExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
BlockExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitCatchBlock(CatchBlockSlim)
Visits the children of the CatchBlock.
Declaration
protected virtual TCatchBlock VisitCatchBlock(CatchBlockSlim node)
Parameters
Type | Name | Description |
---|---|---|
CatchBlockSlim | node | Catch block to visit. |
Returns
Type | Description |
---|---|
TCatchBlock | Result of visiting the catch block. |
VisitConditional(ConditionalExpressionSlim)
Visits the children of the ConditionalExpression.
Declaration
protected override TExpression VisitConditional(ConditionalExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
ConditionalExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitConstant(ConstantExpressionSlim)
Visits the children of the ConstantExpression.
Declaration
protected override TExpression VisitConstant(ConstantExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
ConstantExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitDefault(DefaultExpressionSlim)
Visits the children of the DefaultExpression.
Declaration
protected override TExpression VisitDefault(DefaultExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
DefaultExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitElementInit(ElementInitSlim)
Visits the children of the ElementInit.
Declaration
protected virtual TElementInit VisitElementInit(ElementInitSlim node)
Parameters
Type | Name | Description |
---|---|---|
ElementInitSlim | node | Element initializer to visit. |
Returns
Type | Description |
---|---|
TElementInit | Result of visiting the element initializer. |
VisitExtension(ExpressionSlim)
Visits the children of the extension expression node.
Declaration
protected override TExpression VisitExtension(ExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
ExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitGoto(GotoExpressionSlim)
Visits the children of the GotoExpression.
Declaration
protected override TExpression VisitGoto(GotoExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
GotoExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitIndex(IndexExpressionSlim)
Visits the children of the IndexExpression.
Declaration
protected override TExpression VisitIndex(IndexExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
IndexExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitInvocation(InvocationExpressionSlim)
Visits the children of the InvocationExpression.
Declaration
protected override TExpression VisitInvocation(InvocationExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
InvocationExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitLabel(LabelExpressionSlim)
Visits the children of the LabelExpression.
Declaration
protected override TExpression VisitLabel(LabelExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
LabelExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitLabelTarget(LabelTargetSlim)
Visits the children of the LabelTarget.
Declaration
protected virtual TLabelTarget VisitLabelTarget(LabelTargetSlim node)
Parameters
Type | Name | Description |
---|---|---|
LabelTargetSlim | node | Label target to visit. |
Returns
Type | Description |
---|---|
TLabelTarget | Result of visiting the label target. |
VisitLambda(LambdaExpressionSlim)
Visits the children of the LambdaExpression.
Declaration
protected override TExpression VisitLambda(LambdaExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
LambdaExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitListInit(ListInitExpressionSlim)
Visits the children of the ListInitExpression.
Declaration
protected override TExpression VisitListInit(ListInitExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
ListInitExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitLoop(LoopExpressionSlim)
Visits the children of the LoopExpression.
Declaration
protected override TExpression VisitLoop(LoopExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
LoopExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitMember(MemberExpressionSlim)
Visits the children of the MemberExpression.
Declaration
protected override TExpression VisitMember(MemberExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
MemberExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitMemberAssignment(MemberAssignmentSlim)
Visits the children of the MemberAssignment.
Declaration
protected virtual TMemberAssignment VisitMemberAssignment(MemberAssignmentSlim node)
Parameters
Type | Name | Description |
---|---|---|
MemberAssignmentSlim | node | Member assignment to visit. |
Returns
Type | Description |
---|---|
TMemberAssignment | Result of visiting the member assignment. |
VisitMemberBinding(MemberBindingSlim)
Visits the children of the MemberBinding.
Declaration
protected virtual TMemberBinding VisitMemberBinding(MemberBindingSlim node)
Parameters
Type | Name | Description |
---|---|---|
MemberBindingSlim | node | Member binding to visit. |
Returns
Type | Description |
---|---|
TMemberBinding | Result of visiting the member binding. |
VisitMemberInit(MemberInitExpressionSlim)
Visits the children of the MemberInitExpression.
Declaration
protected override TExpression VisitMemberInit(MemberInitExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
MemberInitExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitMemberListBinding(MemberListBindingSlim)
Visits the children of the MemberListBinding.
Declaration
protected virtual TMemberListBinding VisitMemberListBinding(MemberListBindingSlim node)
Parameters
Type | Name | Description |
---|---|---|
MemberListBindingSlim | node | Member list binding to visit. |
Returns
Type | Description |
---|---|
TMemberListBinding | Result of visiting the member list binding. |
VisitMemberMemberBinding(MemberMemberBindingSlim)
Visits the children of the MemberMemberBinding.
Declaration
protected virtual TMemberMemberBinding VisitMemberMemberBinding(MemberMemberBindingSlim node)
Parameters
Type | Name | Description |
---|---|---|
MemberMemberBindingSlim | node | Member member binding to visit. |
Returns
Type | Description |
---|---|
TMemberMemberBinding | Result of visiting the member member binding. |
VisitMethodCall(MethodCallExpressionSlim)
Visits the children of the MethodCallExpression.
Declaration
protected override TExpression VisitMethodCall(MethodCallExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
MethodCallExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitNew(NewExpressionSlim)
Visits the children of the NewExpression.
Declaration
protected override TExpression VisitNew(NewExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
NewExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitNewArray(NewArrayExpressionSlim)
Visits the children of the NewArrayExpression.
Declaration
protected override TExpression VisitNewArray(NewArrayExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
NewArrayExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitParameter(ParameterExpressionSlim)
Visits the children of the ParameterExpression.
Declaration
protected override TExpression VisitParameter(ParameterExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
ParameterExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitSwitch(SwitchExpressionSlim)
Visits the children of the SwitchExpression.
Declaration
protected override TExpression VisitSwitch(SwitchExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
SwitchExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitSwitchCase(SwitchCaseSlim)
Visits the children of the SwitchCase.
Declaration
protected virtual TSwitchCase VisitSwitchCase(SwitchCaseSlim node)
Parameters
Type | Name | Description |
---|---|---|
SwitchCaseSlim | node | Switch case to visit. |
Returns
Type | Description |
---|---|
TSwitchCase | Result of visiting the switch case. |
VisitTry(TryExpressionSlim)
Visits the children of the TryExpression.
Declaration
protected override TExpression VisitTry(TryExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
TryExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitTypeBinary(TypeBinaryExpressionSlim)
Visits the children of the TypeBinaryExpression.
Declaration
protected override TExpression VisitTypeBinary(TypeBinaryExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
TypeBinaryExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |
Overrides
VisitUnary(UnaryExpressionSlim)
Visits the children of the UnaryExpression.
Declaration
protected override TExpression VisitUnary(UnaryExpressionSlim node)
Parameters
Type | Name | Description |
---|---|---|
UnaryExpressionSlim | node | Expression to visit. |
Returns
Type | Description |
---|---|
TExpression | Result of visiting the expression. |