org.codehaus.groovy.classgen
Class StateStackElement

Field Summary
 ClassNode clazz
           
 boolean closure
           
 VariableScope scope
           
 
Constructor Summary
StateStackElement()
           
 
Method Summary
def VariableScopeVisitor(SourceUnit source)
          
void checkPropertyOnExplicitThis(PropertyExpression pe)
           a property on "this", like this.x is transformed to a direct field access, so we need to check the static context here
void checkVariableContextAccess(Variable v, Expression expr)
          
Variable checkVariableNameForDeclaration(String name, Expression expression)
          
void declare(def parameters, ASTNode node)
          
void declare(VariableExpression expr)
          
void declare(Variable var, ASTNode expr)
          
Variable findClassMember(ClassNode cn, String name)
          
String getPropertyName(MethodNode m)
          
ClassNode getPropertyType(MethodNode m)
          
SourceUnit getSourceUnit()
          
void popState()
          
void pushState(boolean isStatic)
          
void pushState()
          
void visitBlockStatement(BlockStatement block)
          
void visitCatchStatement(CatchStatement statement)
          
void visitClass(ClassNode node)
          
void visitClosureExpression(ClosureExpression expression)
          
void visitConstructorCallExpression(ConstructorCallExpression call)
          
void visitConstructorOrMethod(MethodNode node, boolean isConstructor)
          
void visitDeclarationExpression(DeclarationExpression expression)
          
void visitField(FieldNode node)
          
void visitFieldExpression(FieldExpression expression)
          
void visitForLoop(ForStatement forLoop)
          
void visitMethodCallExpression(MethodCallExpression call)
          
void visitProperty(PropertyNode node)
          
void visitPropertyExpression(PropertyExpression expression)
          
void visitVariableExpression(VariableExpression expression)
          
 

Constructor Detail

StateStackElement

public StateStackElement()


Method Detail

VariableScopeVisitor

public def VariableScopeVisitor(SourceUnit source)


checkPropertyOnExplicitThis

void checkPropertyOnExplicitThis(PropertyExpression pe)
a property on "this", like this.x is transformed to a direct field access, so we need to check the static context here


checkVariableContextAccess

void checkVariableContextAccess(Variable v, Expression expr)


checkVariableNameForDeclaration

Variable checkVariableNameForDeclaration(String name, Expression expression)


declare

void declare(def parameters, ASTNode node)


declare

void declare(VariableExpression expr)


declare

void declare(Variable var, ASTNode expr)


findClassMember

Variable findClassMember(ClassNode cn, String name)


getPropertyName

String getPropertyName(MethodNode m)


getPropertyType

ClassNode getPropertyType(MethodNode m)


getSourceUnit

SourceUnit getSourceUnit()


popState

void popState()


pushState

void pushState(boolean isStatic)


pushState

void pushState()


visitBlockStatement

public void visitBlockStatement(BlockStatement block)


visitCatchStatement

public void visitCatchStatement(CatchStatement statement)


visitClass

public void visitClass(ClassNode node)


visitClosureExpression

public void visitClosureExpression(ClosureExpression expression)


visitConstructorCallExpression

public void visitConstructorCallExpression(ConstructorCallExpression call)


visitConstructorOrMethod

void visitConstructorOrMethod(MethodNode node, boolean isConstructor)


visitDeclarationExpression

public void visitDeclarationExpression(DeclarationExpression expression)


visitField

public void visitField(FieldNode node)


visitFieldExpression

public void visitFieldExpression(FieldExpression expression)


visitForLoop

public void visitForLoop(ForStatement forLoop)


visitMethodCallExpression

public void visitMethodCallExpression(MethodCallExpression call)


visitProperty

public void visitProperty(PropertyNode node)


visitPropertyExpression

public void visitPropertyExpression(PropertyExpression expression)


visitVariableExpression

public void visitVariableExpression(VariableExpression expression)