Groovy Documentation

## org.codehaus.groovy.transform.sc.transformers
[Java] Class StaticCompilationTransformer

    java.lang.Object
      org.codehaus.groovy.ast.CodeVisitorSupport
          org.codehaus.groovy.ast.ClassCodeVisitorSupport
              org.codehaus.groovy.ast.ClassCodeExpressionTransformer
                  org.codehaus.groovy.transform.sc.transformers.StaticCompilationTransformer

    public class StaticCompilationTransformer
    extends ClassCodeExpressionTransformer

Some expressions use symbols as aliases to method calls (<<, +=, ...). In static compilation, if such a method call is found, we transform the original binary expression into a method call expression so that the call gets statically compiled.

Authors:
  Cedric Champeau

Field Summary
`protected static ClassNode` | `BYTECODE_ADAPTER_CLASS`
`protected static java.util.Map` | `BYTECODE_BINARY_ADAPTERS`

Constructor Summary
`StaticCompilationTransformer(SourceUnit unit)`

Method Summary
`ClassNode` | `getClassNode()`
`protected SourceUnit` | `getSourceUnit()`
`StaticTypesTypeChooser` | `getTypeChooser()`
`Expression` | `transform(Expression expr)`
`void` | `visitClass(ClassNode node)`
`void` | `visitClassCodeContainer(Statement code)`

Methods inherited from class ClassCodeExpressionTransformer
transform, visitAnnotations, visitAssertStatement, visitCaseStatement, visitConstructorOrMethod, visitDoWhileLoop, visitExpressionStatement, visitField, visitForLoop, visitIfElse, visitProperty, visitReturnStatement, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitWhileLoop

Methods inherited from class ClassCodeVisitorSupport

addError, getSourceUnit, visitAnnotations, visitAssertStatement, visitBlockStatement, visitBreakStatement, visitCaseStatement, visitCatchStatement, visitClass, visitClassCodeContainer, visitConstructor, visitConstructorOrMethod, visitContinueStatement, visitDeclarationExpression, visitDoWhileLoop, visitExpressionStatement, visitField, visitForLoop, visitIfElse, visitImports, visitMethod, visitObjectInitializerStatements, visitPackage, visitProperty, visitReturnStatement, visitStatement, visitSwitch, visitSynchronizedStatement, visitThrowStatement, visitTryCatchFinally, visitWhileLoop

Methods inherited from class CodeVisitorSupport

visitArgumentlistExpression, visitArrayExpression, visitAssertStatement, visitAttributeExpression, visitBinaryExpression, visitBitwiseNegationExpression, visitBlockStatement, visitBooleanExpression, visitBreakStatement, visitBytecodeExpression, visitCaseStatement, visitCastExpression, visitCatchStatement, visitClassExpression, visitClosureExpression, visitClosureListExpression, visitConstantExpression, visitConstructorCallExpression, visitContinueStatement, visitDeclarationExpression, visitDoWhileLoop, visitEmptyStatement, visitExpressionStatement, visitFieldExpression, visitForLoop, visitGStringExpression, visitIfElse, visitListExpression, visitListOfExpressions, visitMapEntryExpression, visitMapExpression, visitMethodCallExpression, visitMethodPointerExpression, visitNotExpression, visitPostfixExpression, visitPrefixExpression, visitPropertyExpression, visitRangeExpression, visitReturnStatement, visitShortTernaryExpression, visitSpreadExpression, visitSpreadMapExpression, visitStaticMethodCallExpression, visitSwitch, visitSynchronizedStatement, visitTernaryExpression, visitThrowStatement, visitTryCatchFinally, visitTupleExpression, visitUnaryMinusExpression, visitUnaryPlusExpression, visitVariableExpression, visitWhileLoop

Methods inherited from class java.lang.Object
java.lang.Object#wait(long), java.lang.Object#wait(long, int), java.lang.Object#wait(), java.lang.Object#equals(java.lang.Object), java.lang.Object#toString(), java.lang.Object#hashCode(), java.lang.Object#getClass(), java.lang.Object#notify(), java.lang.Object#notifyAll()

Field Detail

### BYTECODE_ADAPTER_CLASS

    protected static final ClassNode BYTECODE_ADAPTER_CLASS

### BYTECODE_BINARY_ADAPTERS

    protected static final java.util.Map BYTECODE_BINARY_ADAPTERS

Constructor Detail

### StaticCompilationTransformer

    public StaticCompilationTransformer(SourceUnit unit)

Method Detail

### getClassNode

    public ClassNode getClassNode()

### getSourceUnit

    protected SourceUnit getSourceUnit() {
    protected SourceUnit getSourceUnit()

### getTypeChooser

    public StaticTypesTypeChooser getTypeChooser()

### transform

    public Expression transform(Expression expr) {
    public Expression transform(Expression expr)

### visitClass

    public void visitClass(final ClassNode node) {
    public void visitClass(ClassNode node)

### visitClassCodeContainer

    public void visitClassCodeContainer(final Statement code) {
    public void visitClassCodeContainer(Statement code)

Groovy Documentation