Package org.spockframework.compiler
Class ConditionRewriter
- java.lang.Object
-
- org.spockframework.util.AbstractExpressionConverter<org.codehaus.groovy.ast.expr.Expression>
-
- org.spockframework.compiler.ConditionRewriter
-
- All Implemented Interfaces:
org.codehaus.groovy.ast.GroovyCodeVisitor
public class ConditionRewriter extends AbstractExpressionConverter<org.codehaus.groovy.ast.expr.Expression>
Rewrites explicit ("assert x > 3") and implicit ("x > 3") condition statements. Replacing the original statement with the rewritten one is up to clients.- Author:
- Peter Niederwieser
-
-
Field Summary
-
Fields inherited from class org.spockframework.util.AbstractExpressionConverter
result
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static org.codehaus.groovy.ast.stmt.Statement
rewriteExplicitCondition(org.codehaus.groovy.ast.stmt.AssertStatement stat, IRewriteResources resources)
static org.codehaus.groovy.ast.stmt.Statement
rewriteImplicitCondition(org.codehaus.groovy.ast.stmt.ExpressionStatement stat, IRewriteResources resources)
void
visitArgumentlistExpression(org.codehaus.groovy.ast.expr.ArgumentListExpression expr)
void
visitArrayExpression(org.codehaus.groovy.ast.expr.ArrayExpression expr)
void
visitAttributeExpression(org.codehaus.groovy.ast.expr.AttributeExpression expr)
void
visitBinaryExpression(org.codehaus.groovy.ast.expr.BinaryExpression expr)
void
visitBitwiseNegationExpression(org.codehaus.groovy.ast.expr.BitwiseNegationExpression expr)
void
visitBooleanExpression(org.codehaus.groovy.ast.expr.BooleanExpression expr)
void
visitBytecodeExpression(org.codehaus.groovy.classgen.BytecodeExpression expr)
void
visitCastExpression(org.codehaus.groovy.ast.expr.CastExpression expr)
void
visitClassExpression(org.codehaus.groovy.ast.expr.ClassExpression expr)
void
visitClosureExpression(org.codehaus.groovy.ast.expr.ClosureExpression expr)
void
visitClosureListExpression(org.codehaus.groovy.ast.expr.ClosureListExpression expr)
void
visitConstantExpression(org.codehaus.groovy.ast.expr.ConstantExpression expr)
void
visitConstructorCallExpression(org.codehaus.groovy.ast.expr.ConstructorCallExpression expr)
void
visitDeclarationExpression(org.codehaus.groovy.ast.expr.DeclarationExpression expr)
void
visitFieldExpression(org.codehaus.groovy.ast.expr.FieldExpression expr)
void
visitGStringExpression(org.codehaus.groovy.ast.expr.GStringExpression expr)
void
visitListExpression(org.codehaus.groovy.ast.expr.ListExpression expr)
void
visitMapEntryExpression(org.codehaus.groovy.ast.expr.MapEntryExpression expr)
void
visitMapExpression(org.codehaus.groovy.ast.expr.MapExpression expr)
void
visitMethodCallExpression(org.codehaus.groovy.ast.expr.MethodCallExpression expr)
void
visitMethodPointerExpression(org.codehaus.groovy.ast.expr.MethodPointerExpression expr)
void
visitNotExpression(org.codehaus.groovy.ast.expr.NotExpression expr)
void
visitPostfixExpression(org.codehaus.groovy.ast.expr.PostfixExpression expr)
void
visitPrefixExpression(org.codehaus.groovy.ast.expr.PrefixExpression expr)
void
visitPropertyExpression(org.codehaus.groovy.ast.expr.PropertyExpression expr)
void
visitRangeExpression(org.codehaus.groovy.ast.expr.RangeExpression expr)
void
visitShortTernaryExpression(org.codehaus.groovy.ast.expr.ElvisOperatorExpression expr)
void
visitSpreadExpression(org.codehaus.groovy.ast.expr.SpreadExpression expr)
void
visitSpreadMapExpression(org.codehaus.groovy.ast.expr.SpreadMapExpression expr)
void
visitStaticMethodCallExpression(org.codehaus.groovy.ast.expr.StaticMethodCallExpression expr)
void
visitTernaryExpression(org.codehaus.groovy.ast.expr.TernaryExpression expr)
void
visitTupleExpression(org.codehaus.groovy.ast.expr.TupleExpression expr)
void
visitUnaryMinusExpression(org.codehaus.groovy.ast.expr.UnaryMinusExpression expr)
void
visitUnaryPlusExpression(org.codehaus.groovy.ast.expr.UnaryPlusExpression expr)
void
visitVariableExpression(org.codehaus.groovy.ast.expr.VariableExpression expr)
-
Methods inherited from class org.spockframework.util.AbstractExpressionConverter
convert, convertAll, unsupported, visitAssertStatement, visitBlockStatement, visitBreakStatement, visitCaseStatement, visitCatchStatement, visitContinueStatement, visitDoWhileLoop, visitExpressionStatement, visitForLoop, visitIfElse, visitReturnStatement, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitTryCatchFinally, visitWhileLoop
-
-
-
-
Method Detail
-
rewriteExplicitCondition
public static org.codehaus.groovy.ast.stmt.Statement rewriteExplicitCondition(org.codehaus.groovy.ast.stmt.AssertStatement stat, IRewriteResources resources)
-
rewriteImplicitCondition
public static org.codehaus.groovy.ast.stmt.Statement rewriteImplicitCondition(org.codehaus.groovy.ast.stmt.ExpressionStatement stat, IRewriteResources resources)
-
visitMethodCallExpression
public void visitMethodCallExpression(org.codehaus.groovy.ast.expr.MethodCallExpression expr)
-
visitStaticMethodCallExpression
public void visitStaticMethodCallExpression(org.codehaus.groovy.ast.expr.StaticMethodCallExpression expr)
-
visitBytecodeExpression
public void visitBytecodeExpression(org.codehaus.groovy.classgen.BytecodeExpression expr)
-
visitArgumentlistExpression
public void visitArgumentlistExpression(org.codehaus.groovy.ast.expr.ArgumentListExpression expr)
-
visitPropertyExpression
public void visitPropertyExpression(org.codehaus.groovy.ast.expr.PropertyExpression expr)
-
visitAttributeExpression
public void visitAttributeExpression(org.codehaus.groovy.ast.expr.AttributeExpression expr)
-
visitFieldExpression
public void visitFieldExpression(org.codehaus.groovy.ast.expr.FieldExpression expr)
-
visitMethodPointerExpression
public void visitMethodPointerExpression(org.codehaus.groovy.ast.expr.MethodPointerExpression expr)
-
visitVariableExpression
public void visitVariableExpression(org.codehaus.groovy.ast.expr.VariableExpression expr)
-
visitDeclarationExpression
public void visitDeclarationExpression(org.codehaus.groovy.ast.expr.DeclarationExpression expr)
-
visitBinaryExpression
public void visitBinaryExpression(org.codehaus.groovy.ast.expr.BinaryExpression expr)
-
visitConstantExpression
public void visitConstantExpression(org.codehaus.groovy.ast.expr.ConstantExpression expr)
-
visitClassExpression
public void visitClassExpression(org.codehaus.groovy.ast.expr.ClassExpression expr)
-
visitUnaryMinusExpression
public void visitUnaryMinusExpression(org.codehaus.groovy.ast.expr.UnaryMinusExpression expr)
-
visitUnaryPlusExpression
public void visitUnaryPlusExpression(org.codehaus.groovy.ast.expr.UnaryPlusExpression expr)
-
visitBitwiseNegationExpression
public void visitBitwiseNegationExpression(org.codehaus.groovy.ast.expr.BitwiseNegationExpression expr)
-
visitCastExpression
public void visitCastExpression(org.codehaus.groovy.ast.expr.CastExpression expr)
-
visitClosureListExpression
public void visitClosureListExpression(org.codehaus.groovy.ast.expr.ClosureListExpression expr)
-
visitNotExpression
public void visitNotExpression(org.codehaus.groovy.ast.expr.NotExpression expr)
-
visitListExpression
public void visitListExpression(org.codehaus.groovy.ast.expr.ListExpression expr)
-
visitRangeExpression
public void visitRangeExpression(org.codehaus.groovy.ast.expr.RangeExpression expr)
-
visitMapExpression
public void visitMapExpression(org.codehaus.groovy.ast.expr.MapExpression expr)
-
visitMapEntryExpression
public void visitMapEntryExpression(org.codehaus.groovy.ast.expr.MapEntryExpression expr)
-
visitConstructorCallExpression
public void visitConstructorCallExpression(org.codehaus.groovy.ast.expr.ConstructorCallExpression expr)
-
visitGStringExpression
public void visitGStringExpression(org.codehaus.groovy.ast.expr.GStringExpression expr)
-
visitArrayExpression
public void visitArrayExpression(org.codehaus.groovy.ast.expr.ArrayExpression expr)
-
visitSpreadExpression
public void visitSpreadExpression(org.codehaus.groovy.ast.expr.SpreadExpression expr)
-
visitSpreadMapExpression
public void visitSpreadMapExpression(org.codehaus.groovy.ast.expr.SpreadMapExpression expr)
-
visitTernaryExpression
public void visitTernaryExpression(org.codehaus.groovy.ast.expr.TernaryExpression expr)
-
visitShortTernaryExpression
public void visitShortTernaryExpression(org.codehaus.groovy.ast.expr.ElvisOperatorExpression expr)
-
visitPrefixExpression
public void visitPrefixExpression(org.codehaus.groovy.ast.expr.PrefixExpression expr)
-
visitPostfixExpression
public void visitPostfixExpression(org.codehaus.groovy.ast.expr.PostfixExpression expr)
-
visitBooleanExpression
public void visitBooleanExpression(org.codehaus.groovy.ast.expr.BooleanExpression expr)
-
visitClosureExpression
public void visitClosureExpression(org.codehaus.groovy.ast.expr.ClosureExpression expr)
-
visitTupleExpression
public void visitTupleExpression(org.codehaus.groovy.ast.expr.TupleExpression expr)
-
-