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 | Class and Description |
|---|---|
| pack-priv class | |
| pack-priv class | Lower.
A navigator class for assembling a mapping from local class symbols to class definition trees. |
| pack-priv class | Lower.
EnumMapping using compile-time constants. |
| pack-priv static interface | Lower.
Generates a test value and corresponding cases for a switch on an enum type. |
| pack-priv class | Lower.
A navigator class for collecting the free variables accessed from a local class. |
| private class | Lower.
Signature Generation |
| pack-priv class | Lower.
EnumMapping using run-time ordinal lookup. |
| pack-priv static interface | |
| pack-priv static record |
| Modifier and Type | Field and Description |
|---|---|
| private Map | accessConstrs
A mapping from (constructor) symbols to access constructor symbols. |
| private List | accessConstrTags
A list of all class symbols used for access constructor tags. |
| private ListBuffer | accessed
A queue for all accessed symbols. |
| private Map | accessNums
A mapping from symbols to their access numbers. |
| private Map | accessSyms
A mapping from symbols to an array of access symbols, indexed by access code. |
| pack-priv Map | actualSymbols
A hash table mapping virtual accessed symbols in outer subclasses to the actually referred symbol in superclasses. |
| private Symbol. | |
| private final Attr | |
| pack-priv Env | attrEnv
Environment for symbol lookup, set by translateTopLevelClass. |
| private final ConstFold | |
| private final Check | |
| pack-priv Map | classdefs
A hash table mapping local classes to their definitions. |
| pack-priv Lower. | |
| pack-priv JCTree. | |
| pack-priv Symbol. | currentClass
The currently enclosing class. |
| pack-priv JCTree. | currentMethodDef
The current method definition. |
| pack-priv Symbol. | currentMethodSym
The current method symbol. |
| pack-priv Type | currentRestype
The current expected return type. |
| private final boolean | |
| private final boolean | |
| private final Name | |
| private JCTree. | enclOp
Visitor argument: enclosing operator node. |
| pack-priv Map | |
| pack-priv Map | freevarCache
A hash table mapping class symbols to lists of free variables. |
| private final Log | |
| protected static final Context. | |
| private TreeMaker | |
| private JCDiagnostic. | |
| private final Names | |
| private final boolean | |
| private final Operators | |
| private final boolean | |
| pack-priv JCTree. | outermostClassDef
The currently enclosing outermost class definition. |
| pack-priv JCTree | outermostMemberDef
The currently enclosing outermost member definition. |
| pack-priv List | outerThisStack
A stack containing the this$n field of the currently translated classes (if needed) in innermost first order. |
| private final Option. | |
| pack-priv Map | proxies
A map which allows to retrieve the translated proxy variable for any given symbol of an enclosing scope that is accessed (the accessed symbol could be the synthetic 'this$n' symbol). |
| public Map | prunedTree
A hash table mapping local classes to a list of pruned trees. |
| private final Resolve | |
| private final Symtab | |
| private Symbol. | |
| private final Target | |
| pack-priv ListBuffer | translated
A queue of all translated classes. |
| private final TransTypes | |
| pack-priv Scope. | twrVars
A scope containing all unnamed resource variables/saved exception variables for translated TWR blocks |
| private final TypeEnvs | |
| private final HashMap | |
| private final Types | |
| private final boolean | |
| private int |
| Modifier and Type | Method and Description |
|---|---|
| pack-priv JCTree. | |
| pack-priv JCTree. | abstractRval(JCTree.
Construct an expression using the builder, with the given rval expression as an argument to the builder. |
| pack-priv JCTree. | |
| pack-priv JCTree. | access(Symbol
The accessed symbol. sym, JCTree.The tree referring to the symbol. tree,The closest enclosing operation node of tree,
null if tree is not a subtree of an operation. enclOp,Is access via a (qualified) C.super? refSuper)Ensure that identifier is accessible, return tree accessing the identifier. |
| pack-priv JCTree. | access(JCTree.
The identifier tree. treeEnsure that identifier is accessible, return tree accessing the identifier. |
| pack-priv JCTree. | accessBase(JCDiagnostic.
The accessed symbol. sym)The qualifier to be used for accessing a symbol in an outer class. |
| pack-priv Symbol. | accessClass(Symbol
The access symbol sym, boolean Is access to a protected symbol in another
package? protAccess, JCTree tree)The class in which an access method for given symbol goes. |
| private static int | accessCode(JCTree
The tree representing the identifier use. tree, JCTree The closest enclosing operation node of tree,
null if tree is not a subtree of an operation. enclOp)return access code for identifier, |
| pack-priv Symbol | accessConstructor(JCDiagnostic.
The position to report diagnostics, if any. pos,The private constructor. constr)Return access constructor for a private constructor, or the constructor itself, if no access constructor is needed. |
| pack-priv JCTree | accessConstructorDef(int
The source code position of the definition. pos, Symbol The private constructor. constr, Symbol.The access method for the constructor. accessorConstruct definition of an access constructor. |
| pack-priv Symbol. | |
| pack-priv JCTree | accessDef(int
The source code position of the definition. pos, Symbol The private or protected symbol. vsym, Symbol.The access method for the symbol. accessor,The access code. acode)Construct definition of an access method. |
| pack-priv Name | accessName(int anum, int acode)
The name of the access method with number `anum' and access code `acode'. |
| pack-priv Symbol. | accessSymbol(Symbol
The accessed private symbol. sym, JCTree The accessing tree. tree, JCTree The closest enclosing operation node of tree,
null if tree is not a subtree of an operation. enclOp, boolean Is access to a protected symbol in another
package? protAccess, boolean Is access via a (qualified) C.super? refSuper)Return access symbol for a private or protected symbol from an inner class. |
| private List | |
| private void | |
| private String | |
| private JCTree. | |
| private Symbol. | assertionsDisabledClass()
Used to create an auxiliary class to hold $assertionsDisabled for interfaces. |
| private Symbol. | binaryAccessOperator(int acode, JCTree.
Return binary operator that corresponds to given access code. |
| pack-priv List | |
| pack-priv <T extends JCTree. | |
| pack-priv JCTree. | |
| pack-priv JCTree. | |
| private void | |
| pack-priv void | checkConflicts(List<JCTree>
lowered class trees translatedTrees)Check whether synthetic symbols generated during lowering conflict with user-defined symbols. |
| pack-priv JCTree. | classDef(Symbol.
The class symbol of which we want to determine the definition. cMap a class symbol to its definition. |
| private JCTree. | |
| private JCTree. | |
| private JCTree. | |
| private void | |
| private void | enterSynthetic(JCDiagnostic.
Position for error reporting. pos,The symbol. sym, Scope.The scope. sEnter a synthetic symbol in a given scope, but complain if there was already one there. |
| pack-priv List | |
| private Boolean | |
| private Boolean | |
| pack-priv List | freevarDefs(int
The source code position of the definition. pos, List<Symbol.The free variables. freevars,The class in which the definitions go. owner)Proxy definitions for all free variables in given list, in reverse order. |
| pack-priv List | |
| pack-priv List | freevars(Symbol.
Return the variables accessed from within a local class, which are declared in the local class' owner. |
| pack-priv List | |
| pack-priv JCTree | generateRecordMethod(JCTree.
|
| private JCTree. | |
| private void | |
| pack-priv JCTree. | |
| pack-priv JCTree. | initOuterThis(int pos, Symbol.
Return tree simulating null checking outer this and/or assigning. |
| public static Lower | |
| private boolean | |
| private boolean | |
| private boolean | |
| pack-priv JCTree. | |
| pack-priv List | loadFreevars(JCDiagnostic.
The source code position to be used for the trees. pos,The list of free variables. freevarsReturn a list of trees that load the free variables in given list, in reverse order. |
| private Symbol. | lookupMethod(JCDiagnostic.
Look up a method in a given scope. |
| private Symbol | |
| pack-priv JCTree. | lowerBoxedPostop(final JCTree.
Lower a tree of the form e++ or e-- where e is an object type |
| pack-priv TreeMaker | make_at(JCDiagnostic.
Equivalent to make.at(pos.getStartPosition()) with side effect of caching pos as make_pos, for use in diagnostics. |
| pack-priv void | makeAccessible(Symbol
The symbol. sym)Add all required access methods for a private symbol to enclosing class. |
| pack-priv JCTree. | makeAssignop(JCTree.
The operators tree tag. optag,The operator's left argument. lhs, JCTree The operator's right argument. rhs)Make an attributed assignop expression. |
| pack-priv JCTree. | makeBinary(JCTree.
The operators tree tag. optag,The operator's left argument. lhs,The operator's right argument. rhsMake an attributed binary expression. |
| private JCTree. | makeCall(JCTree.
Create an attributed tree of the form left.name(). |
| pack-priv JCTree. | |
| pack-priv JCTree. | makeEmptyClass(long
The class symbol's flags flags, Symbol.The class symbol's owner ownerCreate an empty anonymous class definition and enter and complete its symbol. |
| pack-priv JCTree. | |
| pack-priv JCTree. | Returns: a field access treethe site site, JCTree.a class declaration tree tree,the method symbol msym,the static argument types staticArgTypes, PoolConstant.the static argument values staticArgValues,the bootstrap name to look for bootstrapName, Name normally bootstraps receives a method name as second argument, if you want that name
to be different to that of the bootstrap name pass a different name here argName, boolean is it static or not isStatic)Creates an indy qualifier, helpful to be part of an indy invocation |
| pack-priv JCTree. | |
| pack-priv JCTree. | makeNewClass(Type
The class type. ctype, List<JCTree.The constructor arguments. argsMake an attributed class instance creation expression. |
| private JCTree. | |
| pack-priv JCTree. | |
| pack-priv JCTree. | makeOuterThis(JCDiagnostic.
The source code position to be used for the tree. pos,The qualifier class. cConstruct a tree that represents the outer instance
|
| private JCTree. | |
| private Symbol. | |
| pack-priv JCTree. | makeOwnerThis(JCDiagnostic.
The source code position to be used for the tree. pos,The accessed symbol. sym, boolean should we accept a type that is a subtype of
sym's owner, even if it doesn't contain sym
due to hiding, overriding, or non-inheritance
due to protection? preciseMatch)Construct a tree that represents the closest outer instance
|
| pack-priv JCTree. | makeOwnerThisN(JCDiagnostic.
Similar to makeOwnerThis but will never pick "this". |
| private JCTree. | |
| pack-priv JCTree. | makeString(JCTree.
Convert tree into string object, unless it has already a reference type.. |
| private Name | Returns: fresh synthetic namebase name name, Scope scope in which the name has to be unique s)Create a fresh synthetic name within a given scope - the unique name is obtained by appending '$' chars at the end of the name until no match is found. |
| pack-priv JCTree. | makeThis(JCDiagnostic.
The source code position to be used for the tree. pos,The qualifier class. cConstruct a tree simulating the expression |
| private JCTree. | |
| pack-priv JCTree | Returns: a desugared try-with-resources tree, or the original try block if there are no resources to manage.The try statement to inspect. treeOptionally replace a try statement with the desugaring of a try-with-resources statement. |
| pack-priv JCTree. | makeUnary(JCTree.
The operators tree tag. optag,The operator's argument. argMake an attributed unary expression. |
| pack-priv Lower. | |
| private boolean | |
| pack-priv boolean | |
| pack-priv boolean | needsProtectedAccess(Symbol sym, JCTree tree)
Do we need an access method to reference symbol in other package? |
| private boolean | |
| private Symbol. | outerCacheClass()
Return the symbol of a class to contain a cache of compiler-generated statics such as class$ and the $assertionsDisabled flag. |
| pack-priv JCTree. | outerThisDef(int
The source code position of the definition. pos, Symbol.The method in which the definition goes. ownerDefinition for this$n field. |
| pack-priv JCTree. | outerThisDef(int
The source code position of the definition. pos, Symbol.The class in which the definition goes. ownerDefinition for this$n field. |
| pack-priv Name | outerThisName(Type
The class referenced by the this$n field type, Symbol owner)The name of a this$n field |
| private void | |
| pack-priv Name | |
| private List | |
| private boolean | |
| pack-priv void | |
| private Name | |
| public <T extends JCTree> T | translate(T tree)
Overrides com. Visitor method: Translate a single node. |
| public <T extends JCTree. | |
| public <T extends JCTree> T | |
| public <T extends JCTree. | |
| public JCTree. | |
| public List | translateTopLevelClass(Env<AttrContext>
The attribution environment current at the class definition.
We need this for resolving some additional symbols. env, JCTree The tree representing the class definition. cdef, TreeMaker make)Translate a toplevel class and return a list consisting of the translated class and translated versions of all inner classes. |
| private static JCTree. | treeTag(Symbol.
Return tree tag for assignment operation corresponding to given binary operator. |
| pack-priv JCTree. | |
| private boolean | |
| public void | |
| public void | |
| private void | visitArrayForeachLoop(JCTree.
A statement of the form
for ( T v : arrayexpr ) stmt;
|
| public void | visitAssert(JCTree.
Overrides com. Visitor method for assert statements. |
| public void | |
| public void | visitAssignop(final JCTree.
Overrides com.
|
| public void | |
| public void | |
| private JCTree | |
| public void | |
| public void | |
| public void | visitConditional(JCTree.
Overrides com. Visitor method for conditional expressions. |
| public void | |
| private void | visitEnumConstantDef(JCTree.
Translate an enumeration constant and its initializer. |
| private void | |
| public JCTree | |
| public void | visitForeachLoop(JCTree.
Overrides com. Translate away the foreach loop. |
| public void | |
| public void | |
| public void | visitIf(JCTree.
Overrides com. Visitor method for if statements. |
| public void | |
| private void | visitIterableForeachLoop(JCTree.
A statement of the form
for ( T v : coll ) stmt ;
|
| public void | |
| public void | |
| public void | |
| private void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | visitParens(JCTree.
Overrides com. Visitor method for parenthesized expressions. |
| private void | |
| public void | |
| public void | |
| public JCTree | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | visitTypeTest(JCTree.
Overrides com. All the exactness checks between primitive types that require a run-time
check are in |
| public void | |
| public void | |
| public void | |
| public void |