Package com.strobel.expressions
Class ExpressionVisitor
- java.lang.Object
-
- com.strobel.expressions.ExpressionVisitor
-
- Direct Known Subclasses:
DebugViewWriter
,ExpressionStringBuilder
,Optimizer
,VariableBinder
public abstract class ExpressionVisitor extends java.lang.Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
ExpressionVisitor.ElementVisitor<T>
-
Constructor Summary
Constructors Constructor Description ExpressionVisitor()
-
Method Summary
-
-
-
Method Detail
-
visit
public Expression visit(Expression node)
-
visitDefaultValue
protected Expression visitDefaultValue(DefaultValueExpression node)
-
visitExtension
protected Expression visitExtension(Expression node)
-
visitLabel
protected Expression visitLabel(LabelExpression node)
-
visitLabelTarget
protected LabelTarget visitLabelTarget(LabelTarget node)
-
visitConcat
protected Expression visitConcat(ConcatExpression node)
-
visitGoto
protected Expression visitGoto(GotoExpression node)
-
visitLoop
protected Expression visitLoop(LoopExpression node)
-
visitForEach
protected Expression visitForEach(ForEachExpression node)
-
visitFor
protected Expression visitFor(ForExpression node)
-
visitMember
protected Expression visitMember(MemberExpression node)
-
visitConstant
protected Expression visitConstant(ConstantExpression node)
-
visitParameter
protected Expression visitParameter(ParameterExpression node)
-
visitUnary
protected Expression visitUnary(UnaryExpression node)
-
visitBinary
protected Expression visitBinary(BinaryExpression node)
-
visitTypeBinary
protected Expression visitTypeBinary(TypeBinaryExpression node)
-
visitBlock
protected Expression visitBlock(BlockExpression node)
-
visitInvocation
protected Expression visitInvocation(InvocationExpression node)
-
visitMethodCall
protected Expression visitMethodCall(MethodCallExpression node)
-
visitNew
protected Expression visitNew(NewExpression node)
-
visitNewArray
protected Expression visitNewArray(NewArrayExpression node)
-
visitLambda
protected <T> Expression visitLambda(LambdaExpression<T> node)
-
visitConditional
protected Expression visitConditional(ConditionalExpression node)
-
visitRuntimeVariables
protected Expression visitRuntimeVariables(RuntimeVariablesExpression node)
-
visitTry
protected Expression visitTry(TryExpression node)
-
visitCatchBlock
protected CatchBlock visitCatchBlock(CatchBlock node)
-
visitSwitchCase
protected SwitchCase visitSwitchCase(SwitchCase node)
-
visitSwitch
protected Expression visitSwitch(SwitchExpression node)
-
visit
protected static <T> ReadOnlyList<T> visit(ReadOnlyList<T> nodes, ExpressionVisitor.ElementVisitor<T> elementVisitor)
-
visit
final ExpressionList<? extends Expression> visit(ExpressionList<? extends Expression> nodes)
-
visitArguments
final ExpressionList<? extends Expression> visitArguments(IArgumentProvider nodes)
-
visitAndConvert
protected <T extends Expression> T visitAndConvert(T node, java.lang.String callerName)
-
visitAndConvertList
protected <T extends Expression> ExpressionList<T> visitAndConvertList(ExpressionList<T> nodes, java.lang.String callerName)
-
visitAndConvertList
protected ParameterExpressionList visitAndConvertList(ParameterExpressionList nodes, java.lang.String callerName)
-
validateUnary
private static UnaryExpression validateUnary(UnaryExpression before, UnaryExpression after)
-
validateBinary
private static BinaryExpression validateBinary(BinaryExpression before, BinaryExpression after)
-
validateChildType
private static void validateChildType(Type before, Type after, java.lang.String methodName)
-
validateSwitch
private static SwitchExpression validateSwitch(SwitchExpression before, SwitchExpression after)
-
-