Home » openjdk-7 » com.sun.tools » javac » comp » [javadoc | source]
com.sun.tools.javac.comp
class: Lower.FreeVarCollector [javadoc | source]
java.lang.Object
   com.sun.tools.javac.tree.JCTree.Visitor
      com.sun.tools.javac.tree.TreeScanner
         com.sun.tools.javac.comp.Lower$FreeVarCollector
A navigator class for collecting the free variables accessed from a local class. There is only one case; all other cases simply traverse down the tree.
Field Summary
 Symbol owner    The owner of the local class. 
 ClassSymbol clazz    The local class. 
 List<VarSymbol> fvs    The list of owner's variables accessed from within the local class, without any duplicates. 
Constructor:
 FreeVarCollector(ClassSymbol clazz) 
Method from com.sun.tools.javac.comp.Lower$FreeVarCollector Summary:
visitApply,   visitIdent,   visitNewClass,   visitSelect
Methods from com.sun.tools.javac.tree.TreeScanner:
scan,   scan,   visitAnnotation,   visitApply,   visitAssert,   visitAssign,   visitAssignop,   visitBinary,   visitBlock,   visitBreak,   visitCase,   visitCatch,   visitClassDef,   visitConditional,   visitContinue,   visitDoLoop,   visitErroneous,   visitExec,   visitForLoop,   visitForeachLoop,   visitIdent,   visitIf,   visitImport,   visitIndexed,   visitLabelled,   visitLetExpr,   visitLiteral,   visitMethodDef,   visitModifiers,   visitNewArray,   visitNewClass,   visitParens,   visitReturn,   visitSelect,   visitSkip,   visitSwitch,   visitSynchronized,   visitThrow,   visitTopLevel,   visitTree,   visitTry,   visitTypeApply,   visitTypeArray,   visitTypeBoundKind,   visitTypeCast,   visitTypeIdent,   visitTypeParameter,   visitTypeTest,   visitTypeUnion,   visitUnary,   visitVarDef,   visitWhileLoop,   visitWildcard
Methods from com.sun.tools.javac.tree.JCTree$Visitor:
visitAnnotation,   visitApply,   visitAssert,   visitAssign,   visitAssignop,   visitBinary,   visitBlock,   visitBreak,   visitCase,   visitCatch,   visitClassDef,   visitConditional,   visitContinue,   visitDoLoop,   visitErroneous,   visitExec,   visitForLoop,   visitForeachLoop,   visitIdent,   visitIf,   visitImport,   visitIndexed,   visitLabelled,   visitLetExpr,   visitLiteral,   visitMethodDef,   visitModifiers,   visitNewArray,   visitNewClass,   visitParens,   visitReturn,   visitSelect,   visitSkip,   visitSwitch,   visitSynchronized,   visitThrow,   visitTopLevel,   visitTree,   visitTry,   visitTypeApply,   visitTypeArray,   visitTypeBoundKind,   visitTypeCast,   visitTypeIdent,   visitTypeParameter,   visitTypeTest,   visitTypeUnion,   visitUnary,   visitVarDef,   visitWhileLoop,   visitWildcard
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from com.sun.tools.javac.comp.Lower$FreeVarCollector Detail:
 public  void visitApply(JCMethodInvocation tree) 
    If tree refers to a superclass constructor call, add all free variables of the superclass.
 public  void visitIdent(JCIdent tree) 
    If tree refers to a variable in owner of local class, add it to free variables list.
 public  void visitNewClass(JCNewClass tree) 
    If tree refers to a class instance creation expression add all free variables of the freshly created class.
 public  void visitSelect(JCFieldAccess tree) 
    If tree refers to a qualified this or super expression for anything but the current class, add the outer this stack as a free variable.