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 | Gen.
Visitor class for expressions which might be constant expressions. |
| public static class | Gen.
Thrown when the byte code size exceeds limit. |
| pack-priv class | Gen.
code generation contexts, to be used as type parameter for environments. |
| pack-priv abstract class | Gen.
An abstract class for finalizer generation. |
| pack-priv static record |
| Modifier and Type | Field and Description |
|---|---|
| private final String | |
| private final Annotate | |
| private Env | attrEnv
Environment for symbol lookup, set by genClass |
| private final Check | |
| private Gen. | |
| private Code | code
Code buffer, set by genMethod. |
| private final StringConcat | |
| private final boolean | |
| private boolean | |
| pack-priv Env | env
Visitor argument: The current environment. |
| private final boolean | |
| protected static final Context. | |
| pack-priv boolean | |
| private Items | items
Items structure, set by genMethod. |
| private final boolean | lineDebugInfo
Switches |
| private final Log | |
| private final Lower | |
| private final TreeMaker | |
| private final Type | methodType
A type that serves as the expected type for all method expressions. |
| private final Names | |
| private int | nerrs
The number of code-gen errors in this class. |
| pack-priv Gen. | |
| pack-priv final PoolWriter | poolWriter
Constant pool writer, set by genClass. |
| pack-priv Type | pt
Visitor argument: The expected type (prototype). |
| pack-priv Map | qualifiedSymbolCache
Cache the symbol to reflect the qualifying type. |
| pack-priv Items. | result
Visitor result: The item representing the computed value. |
| private final Resolve | |
| pack-priv List | |
| private final Code. | stackMap
Format of stackmap tables to be generated. |
| pack-priv Code. | |
| pack-priv Code. | |
| pack-priv Items. | |
| private final Symtab | |
| private final Target | |
| private JCTree. | toplevel
The top level tree. |
| private final Types | |
| private final boolean |
| Modifier and Type | Method and Description |
|---|---|
| pack-priv Symbol | binaryQualifier(Symbol
The accessed symbol sym, Type The qualifier's type. site)Construct a symbol to reflect the qualifying type that should appear in the byte code as per JLS 13.1. |
| pack-priv void | callMethod(JCDiagnostic.
Position to be used for error reporting. pos,The type of which the method is a member. site, Name The method's name. name, List<Type> The method's argument types. argtypes, boolean A flag that indicates whether we call a
static or instance method. isStatic)Generate code to call a non-private method or constructor. |
| pack-priv List | |
| pack-priv List | |
| private Type | checkDimension(JCDiagnostic.
Check if the given type is an array with too many dimensions. |
| private void | |
| private void | checkStringConstant(JCDiagnostic.
Check a constant value and report if it is a string that is too large. |
| pack-priv Items. | completeBinop(JCTree
The tree representing the left operand. lhs, JCTree The tree representing the right operand. rhs, Symbol.The operator symbol. operatorComplete generating code for operation, with left operand already on stack. |
| private void | |
| pack-priv void | emitMinusOne(int
The given type code (see ( tc)ByteCode).Generate code to load -1 of the given type code (either int or long). |
| pack-priv void | endFinalizerGap(Env<Gen.
the environment which might contain the finalizer
(if it does, env.info.gaps != null). envMark end of gap in catch-all range for finalizer. |
| pack-priv void | endFinalizerGaps(Env<Gen.
the most deeply nested environment to mark from,the least deeply nested environment to mark toMark end of all gaps in catch-all ranges for finalizers of environments lying between, and including to two environments. |
| public void | |
| pack-priv void | |
| pack-priv void | |
| public boolean | Returns: True if code is generated with no errors.The attribution environment that belongs to the
outermost class containing this class definition.
We need this for resolving some additional symbols. env, JCTree.The tree representing the class definition. cdefGenerate code for a class definition. |
| public Items. | |
| public Items. | genCond(JCTree
The expression to be visited. _tree, boolean The flag to indicate that the condition is
a flow controller so produced conditions
should contain a proper tree to generate
CharacterRangeTable branches for them. markBranches)Derived visitor method: generate code for a boolean expression in a control-flow context. |
| public void | genDef(JCTree
The definition to be visited. tree, Env<Gen.The environment current at the definition. envVisitor method: generate code for a definition, catching and reporting any completion failures. |
| private void | |
| private void | |
| public Items. | |
| pack-priv void | genFinalizer(Env<Gen.
Generate code to invoke the finalizer associated with given environment. |
| private void | genLoop(JCTree.
The tree representing the loop. loop,The loop's body. body,The loop's controlling condition. cond,"Step" statements to be inserted at end of
each iteration. step,True if the loop test belongs before the body. testFirst)Generate code for a loop. |
| pack-priv void | genMethod(JCTree.
The tree representing the method definition. tree,The environment current for the method body. env,A flag that indicates whether all jumps are
within 32K. We first invoke this method under
the assumption that fatcode == false, i.e. all
jumps are within 32K. If this fails, fatcode
is set to true and we try again. fatcode)Generate code for a method. |
| private void | |
| pack-priv void | |
| public void | genStat(JCTree
The tree to be visited. tree, Env<Gen.The environment to use. env,The CharacterRangeTable flags
indicating type of the entry. crtFlags)Derived visitor method: check whether CharacterRangeTable should be emitted, if so, put a new entry into CRTable and call method to generate bytecode. |
| public void | |
| public void | genStats(List<JCTree.
The list of trees to be visited. trees,The environment to use. env,The CharacterRangeTable flags
indicating type of the entry. crtFlags)Derived visitor method: check whether CharacterRangeTable should be emitted, if so, put a new entry into CRTable and call method to generate bytecode. |
| public void | |
| pack-priv void | |
| private List | |
| public Env | |
| public Code | |
| public Items | |
| private void | handleSwitch(JCTree swtch, JCTree.
|
| pack-priv boolean | hasFinally(JCTree
The tree representing the structure that's aborted target, Env<Gen.The environment current at the non-local exit. envDo any of the structures aborted by a non-local exit have finalizers that require an empty stack? |
| private boolean | |
| private int | |
| public static Gen | |
| private void | |
| private boolean | isAccessSuper(JCTree.
Is the given method definition an access method resulting from a qualified super? |
| public boolean | |
| public boolean | |
| private boolean | |
| pack-priv void | |
| pack-priv Items. | makeNewArray(JCDiagnostic.
Generate code to create an array with given element type and number of dimensions. |
| pack-priv int | makeRef(JCDiagnostic.
The type for which a reference is inserted. type)Insert a reference to given type in the constant pool, checking for an array with too many dimensions; return the reference's index. |
| pack-priv Items. | |
| private boolean | |
| pack-priv List | normalizeDefs(List<JCTree>
The list of class member declarations. defs, Symbol.The enclosing class. cDistribute member initializer code into constructors and |
| pack-priv void | normalizeMethod(JCTree.
The tree potentially representing a
constructor's definition. md,The list of instance initializer statements. initCode,Type annotations from the initializer expression. initTAsInsert instance initializer code into constructors prior to the super() call. |
| public static int | |
| pack-priv static void | |
| pack-priv void | registerCatch(JCDiagnostic.
Register a catch clause in the "Exceptions" code-attribute. |
| private void | |
| private void | |
| private void | |
| pack-priv Env | unwind(JCTree
The tree representing the structure that's aborted target, Env<Gen.The environment current at the non-local exit. envGenerate code to call all finalizers of structures aborted by a non-local exit. |
| private Env | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| private void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public void | |
| public static int |