Overview | Package | Class | Deprecated | Index | Help
| Groovy Documentation
| FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.codehaus.groovy.control
[Java] Class ResolveVisitor

    java.lang.Object
      org.codehaus.groovy.ast.CodeVisitorSupport
          org.codehaus.groovy.ast.ClassCodeVisitorSupport
              org.codehaus.groovy.ast.ClassCodeExpressionTransformer
                  org.codehaus.groovy.control.ResolveVisitor

    public class ResolveVisitor
    extends ClassCodeExpressionTransformer

Visitor to resolve Types and convert VariableExpression to ClassExpressions if needed. The ResolveVisitor will try to find the Class for a ClassExpression and prints an error if it fails to do so. Constructions like C[], foo as C, (C) foo will force creation of a ClassExpression for C

Note: the method to start the resolving is startResolving(ClassNode, SourceUnit).

Authors:
  Jochen Theodorou
  Roshan Dawrani
  Alex Tkachman

Field Summary
`static java.lang.String[]` | `DEFAULT_IMPORTS`

Method Summary
`java.lang.Object` | `ResolveVisitor(CompilationUnit cu)`
`protected SourceUnit` | `getSourceUnit()`
`void` | `setClassNodeResolver(ClassNodeResolver classNodeResolver)`
`void` | `startResolving(ClassNode node, SourceUnit source)`
`Expression` | `transform(Expression exp)`
`protected Expression` | `transformAnnotationConstantExpression(AnnotationConstantExpression ace)`
`protected Expression` | `transformBinaryExpression(BinaryExpression be)`
`protected Expression` | `transformClosureExpression(ClosureExpression ce)`
`protected Expression` | `transformConstructorCallExpression(ConstructorCallExpression cce)`
`protected Expression` | `transformDeclarationExpression(DeclarationExpression de)`
`protected Expression` | `transformMethodCallExpression(MethodCallExpression mce)`
`protected Expression` | `transformPropertyExpression(PropertyExpression pe)`
`protected Expression` | `transformVariableExpression(VariableExpression ve)`
`void` | `visitAnnotations(AnnotatedNode node)`
`void` | `visitBlockStatement(BlockStatement block)`
`void` | `visitCatchStatement(CatchStatement cs)`
`void` | `visitClass(ClassNode node)`
`protected void` | `visitConstructorOrMethod(MethodNode node, boolean isConstructor)`
`void` | `visitField(FieldNode node)`
`void` | `visitForLoop(ForStatement forLoop)`
`void` | `visitProperty(PropertyNode node)`

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

### DEFAULT_IMPORTS

    public static final java.lang.String[] DEFAULT_IMPORTS

Method Detail

### ResolveVisitor

    public java.lang.Object ResolveVisitor(CompilationUnit cu)

### getSourceUnit

    protected SourceUnit getSourceUnit()

### setClassNodeResolver

    public void setClassNodeResolver(ClassNodeResolver classNodeResolver)

### startResolving

    public void startResolving(ClassNode node, SourceUnit source)

### transform

    public Expression transform(Expression exp)

### transformAnnotationConstantExpression

    protected Expression transformAnnotationConstantExpression(AnnotationConstantExpression ace)

### transformBinaryExpression

    protected Expression transformBinaryExpression(BinaryExpression be)

### transformClosureExpression

    protected Expression transformClosureExpression(ClosureExpression ce)

### transformConstructorCallExpression

    protected Expression transformConstructorCallExpression(ConstructorCallExpression cce)

### transformDeclarationExpression

    protected Expression transformDeclarationExpression(DeclarationExpression de)

### transformMethodCallExpression

    protected Expression transformMethodCallExpression(MethodCallExpression mce)

### transformPropertyExpression

    protected Expression transformPropertyExpression(PropertyExpression pe)

### transformVariableExpression

    protected Expression transformVariableExpression(VariableExpression ve)

### visitAnnotations

    public void visitAnnotations(AnnotatedNode node)

### visitBlockStatement

    public void visitBlockStatement(BlockStatement block)

### visitCatchStatement

    public void visitCatchStatement(CatchStatement cs)

### visitClass

    public void visitClass(ClassNode node)

### visitConstructorOrMethod

    protected void visitConstructorOrMethod(MethodNode node, boolean isConstructor)

### visitField

    public void visitField(FieldNode node)

### visitForLoop

    public void visitForLoop(ForStatement forLoop)

### visitProperty

    public void visitProperty(PropertyNode node)

Groovy Documentation