public class Lower extends TreeTranslator
This is NOT part of any supported API. If you write code that depends on this, you do so at your own risk. This code and its internal interfaces are subject to change or deletion without notice.
Modifier and Type | Field and Description |
---|---|
protected static Context.Key<Lower> |
lowerKey |
Map<Symbol.ClassSymbol,List<JCTree>> |
prunedTree
A hash table mapping local classes to a list of pruned trees.
|
result
Modifier | Constructor and Description |
---|---|
protected |
Lower(Context context) |
translate, translateAnnotations, translateCases, translateCatchers, translateTypeParams, translateVarDefs, visitBreak, visitCase, visitCatch, visitContinue, visitErroneous, visitExec, visitImport, visitLabelled, visitLambda, visitLiteral, visitModifiers, visitReference, visitSkip, visitSynchronized, visitThrow, visitTree, visitTypeApply, visitTypeArray, visitTypeBoundKind, visitTypeIdent, visitTypeIntersection, visitTypeParameter, visitTypeTest, visitTypeUnion, visitWildcard
protected static final Context.Key<Lower> lowerKey
public Map<Symbol.ClassSymbol,List<JCTree>> prunedTree
protected Lower(Context context)
public <T extends JCTree> T translate(T tree)
translate
in class TreeTranslator
public <T extends JCTree> T translate(T tree, Type type)
public <T extends JCTree> T translate(T tree, JCTree.JCExpression enclOp)
public <T extends JCTree> List<T> translate(List<T> trees, JCTree.JCExpression enclOp)
public <T extends JCTree> List<T> translate(List<T> trees, Type type)
public void visitTopLevel(JCTree.JCCompilationUnit tree)
visitTopLevel
in class TreeTranslator
public void visitClassDef(JCTree.JCClassDecl tree)
visitClassDef
in class TreeTranslator
public void visitMethodDef(JCTree.JCMethodDecl tree)
visitMethodDef
in class TreeTranslator
public void visitAnnotatedType(JCTree.JCAnnotatedType tree)
visitAnnotatedType
in class TreeTranslator
public void visitTypeCast(JCTree.JCTypeCast tree)
visitTypeCast
in class TreeTranslator
public void visitNewClass(JCTree.JCNewClass tree)
visitNewClass
in class TreeTranslator
public void visitConditional(JCTree.JCConditional tree)
visitConditional
in class TreeTranslator
public void visitIf(JCTree.JCIf tree)
visitIf
in class TreeTranslator
public void visitAssert(JCTree.JCAssert tree)
visitAssert
in class TreeTranslator
public void visitApply(JCTree.JCMethodInvocation tree)
visitApply
in class TreeTranslator
public void visitParens(JCTree.JCParens tree)
visitParens
in class TreeTranslator
public void visitIndexed(JCTree.JCArrayAccess tree)
visitIndexed
in class TreeTranslator
public void visitAssign(JCTree.JCAssign tree)
visitAssign
in class TreeTranslator
public void visitAssignop(JCTree.JCAssignOp tree)
visitAssignop
in class TreeTranslator
public void visitUnary(JCTree.JCUnary tree)
visitUnary
in class TreeTranslator
public void visitBinary(JCTree.JCBinary tree)
visitBinary
in class TreeTranslator
public void visitIdent(JCTree.JCIdent tree)
visitIdent
in class TreeTranslator
public void visitForeachLoop(JCTree.JCEnhancedForLoop tree)
visitForeachLoop
in class TreeTranslator
public void visitVarDef(JCTree.JCVariableDecl tree)
visitVarDef
in class TreeTranslator
public void visitBlock(JCTree.JCBlock tree)
visitBlock
in class TreeTranslator
public void visitDoLoop(JCTree.JCDoWhileLoop tree)
visitDoLoop
in class TreeTranslator
public void visitWhileLoop(JCTree.JCWhileLoop tree)
visitWhileLoop
in class TreeTranslator
public void visitForLoop(JCTree.JCForLoop tree)
visitForLoop
in class TreeTranslator
public void visitReturn(JCTree.JCReturn tree)
visitReturn
in class TreeTranslator
public void visitSwitch(JCTree.JCSwitch tree)
visitSwitch
in class TreeTranslator
public JCTree visitEnumSwitch(JCTree.JCSwitch tree)
public JCTree visitStringSwitch(JCTree.JCSwitch tree)
public void visitNewArray(JCTree.JCNewArray tree)
visitNewArray
in class TreeTranslator
public void visitSelect(JCTree.JCFieldAccess tree)
visitSelect
in class TreeTranslator
public void visitLetExpr(JCTree.LetExpr tree)
visitLetExpr
in class TreeTranslator
public void visitAnnotation(JCTree.JCAnnotation tree)
visitAnnotation
in class TreeTranslator
public void visitTry(JCTree.JCTry tree)
visitTry
in class TreeTranslator
public List<JCTree> translateTopLevelClass(Env<AttrContext> env, JCTree cdef, TreeMaker make)
env
- The attribution environment current at the class definition.
We need this for resolving some additional symbols.cdef
- The tree representing the class definition.Copyright © 2015. All rights reserved.