org.codehaus.groovy.control
Class OptimizerVisitor
java.lang.Object
org.codehaus.groovy.ast.CodeVisitorSupport
org.codehaus.groovy.ast.ClassCodeVisitorSupport
org.codehaus.groovy.ast.ClassCodeExpressionTransformer
org.codehaus.groovy.control.OptimizerVisitor
- All Implemented Interfaces:
- ExpressionTransformer, GroovyClassVisitor, GroovyCodeVisitor
public class OptimizerVisitor
- extends ClassCodeExpressionTransformer
Visitor to produce several optimizations
- to replace numbered constants with references to static fields
- Author:
- Alex Tkachman
Methods inherited from class org.codehaus.groovy.ast.ClassCodeExpressionTransformer |
visitAnnotations, visitAssertStatement, visitCaseStatement, visitConstructorOrMethod, visitDoWhileLoop, visitExpressionStatement, visitField, visitForLoop, visitIfElse, visitProperty, visitReturnStatement, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitWhileLoop |
Methods inherited from class org.codehaus.groovy.ast.ClassCodeVisitorSupport |
addError, visitBlockStatement, visitBreakStatement, visitCatchStatement, visitClass, visitClassCodeContainer, visitConstructor, visitContinueStatement, visitMethod, visitStatement, visitTryCatchFinally |
Methods inherited from class org.codehaus.groovy.ast.CodeVisitorSupport |
visitArgumentlistExpression, visitArrayExpression, visitAttributeExpression, visitBinaryExpression, visitBitwiseNegationExpression, visitBooleanExpression, visitBytecodeExpression, visitCastExpression, visitClassExpression, visitClosureListExpression, visitConstantExpression, visitConstructorCallExpression, visitDeclarationExpression, visitFieldExpression, visitGStringExpression, visitListExpression, visitListOfExpressions, visitMapEntryExpression, visitMapExpression, visitMethodCallExpression, visitMethodPointerExpression, visitNotExpression, visitPostfixExpression, visitPrefixExpression, visitPropertyExpression, visitRangeExpression, visitRegexExpression, visitShortTernaryExpression, visitSpreadExpression, visitSpreadMapExpression, visitStaticMethodCallExpression, visitTernaryExpression, visitTupleExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitVariableExpression |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
OptimizerVisitor
public OptimizerVisitor(CompilationUnit cu)
visitClass
public void visitClass(ClassNode node,
SourceUnit source)
transform
public Expression transform(Expression exp)
- Description copied from interface:
ExpressionTransformer
- Transforms the given expression into another expression
- Specified by:
transform
in interface ExpressionTransformer
- Overrides:
transform
in class ClassCodeExpressionTransformer
getSourceUnit
protected SourceUnit getSourceUnit()
- Specified by:
getSourceUnit
in class ClassCodeVisitorSupport
visitClosureExpression
public void visitClosureExpression(ClosureExpression expression)
- Specified by:
visitClosureExpression
in interface GroovyCodeVisitor
- Overrides:
visitClosureExpression
in class CodeVisitorSupport