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 abstract class | Resolve.
Base class for 'real' method checks. |
| pack-priv class | Resolve.
An InvalidSymbolError error class indicating that a symbol is not accessible from a given site |
| pack-priv class | Resolve.
InvalidSymbolError error class indicating that a pair of symbols (either methods, constructors or operands) are ambiguous given an actual arguments/type argument list. |
| pack-priv class | Resolve.
Helper class for array constructor lookup; an array constructor lookup is simulated by looking up a method that returns the array type specified as qualifier, and that accepts a single int parameter (size of the array). |
| pack-priv class | |
| pack-priv class | Resolve.
Specialization of |
| pack-priv class | Resolve.
BadMethodReferenceError error class indicating that a method reference symbol has been found, but with the wrong staticness. |
| pack-priv class | |
| pack-priv class | |
| pack-priv abstract class | |
| pack-priv class | Resolve.
Helper class for constructor reference lookup. |
| pack-priv class | Resolve.
DiamondError error class indicating that a constructor symbol is not applicable given an actual arguments/type argument list using diamond inference. |
| public static class | |
| pack-priv class | Resolve.
InvalidSymbolError error class indicating that a given symbol (either a method, a constructor or an operand) is not applicable given an actual arguments/type argument list. |
| pack-priv class | Resolve.
ResolveError error class indicating that a symbol (either methods, constructors or operand) is not applicable given an actual arguments/type argument list. |
| pack-priv static enum | |
| pack-priv abstract class | Resolve.
This class is the root class of all resolution errors caused by an invalid symbol being found during resolution. |
| pack-priv class | |
| pack-priv static interface | |
| pack-priv class | |
| pack-priv abstract class | Resolve.
Helper for defining custom method-like lookup logic; a lookup helper provides hooks for (i) the actual lookup logic and (ii) accessing the lookup result (this step might result in compiler diagnostics to be generated) |
| pack-priv static interface | Resolve.
This interface defines an entry point that should be used to perform a method check. |
| pack-priv abstract class | Resolve.
Check context to be used during method applicability checks. |
| pack-priv static enum | Resolve.
Helper enum defining all method check diagnostics (used by resolveMethodCheck). |
| pack-priv class | Resolve.
This class handles method reference applicability checks; since during these checks it's sometime possible to have inference variables on the actual argument types list, the method applicability check must be extended so that inference variables are 'opened' as needed. |
| pack-priv class | Resolve.
Helper class for method reference lookup. |
| pack-priv class | Resolve.
A resolution context is used to keep track of intermediate results of overload resolution, such as list of method that are not applicable (used to generate more precise diagnostics) and so on. |
| pack-priv static class | Resolve.
Helper class for method resolution diagnostic simplification. |
| pack-priv static enum | |
| pack-priv class | Resolve.
ResultInfo class to be used during method applicability checks. |
| pack-priv class | Resolve.
Most specific method applicability routine. |
| public static interface | |
| pack-priv class | Resolve.
Specialization of |
| pack-priv abstract class | Resolve.
This abstract class embodies the logic that converts one (bound lookup) or two (unbound lookup)
|
| pack-priv abstract class | Resolve.
Helper class for member reference lookup. |
| pack-priv static class | Resolve.
This class is used to represent a method reference lookup result. |
| pack-priv class | |
| pack-priv abstract class | Resolve.
Root class for resolution errors. |
| pack-priv class | Resolve.
InvalidSymbolError error class indicating that an instance member has erroneously been accessed from a static context. |
| pack-priv class | Resolve.
InvalidSymbolError error class indicating that a symbol matching a given name does not exists in a given site. |
| pack-priv class | Resolve.
Helper class for unbound method reference lookup. |
| pack-priv class | |
| pack-priv static enum |
| Modifier and Type | Field and Description |
|---|---|
| pack-priv Types. | accessibilityChecker
Accessibility type-visitor |
| private final boolean | |
| public final boolean | |
| private final boolean | |
| public final boolean | |
| private final boolean | |
| pack-priv Resolve. | arityMethodCheck
Arity-based method check. |
| pack-priv Attr | |
| pack-priv AttrRecover | |
| pack-priv Resolve. | |
| pack-priv Resolve. | basicReferenceChooser
This chooser implements the selection strategy used during a full lookup; this logic is described in JLS SE 8 (15.3.2). |
| pack-priv Check | |
| private final boolean | |
| pack-priv Resolve. | |
| pack-priv DeferredAttr | |
| pack-priv JCDiagnostic. | |
| private final Resolve. | |
| pack-priv final boolean | |
| pack-priv final boolean | |
| pack-priv ClassFinder | |
| pack-priv Infer | |
| pack-priv Log | |
| pack-priv Resolve. | |
| private final Resolve. | |
| pack-priv final List | |
| pack-priv ModuleFinder | |
| private final Resolve. | |
| private final Resolve. | |
| pack-priv Names | |
| pack-priv Resolve. | nilMethodCheck
Dummy method check object. |
| private final Formattable. | |
| private final Resolve. | |
| pack-priv Warner | |
| pack-priv Scope. | |
| pack-priv Preview | |
| private final Resolve. | referenceNotFound
empty reference lookup result |
| protected static final Context. | |
| pack-priv Resolve. | resolveMethodCheck
Main method applicability routine. |
| pack-priv Resolve. | |
| private final Resolve. | |
| pack-priv Resolve. | structuralReferenceChooser
This chooser implements the selection strategy used during an arity-based lookup; this logic is described in JLS SE 8 (15.12.2.1). |
| pack-priv Symtab | |
| private final Resolve. | |
| pack-priv Types | |
| private final Resolve. | varNotFound
error symbols, which are returned when resolution fails |
| pack-priv final EnumSet |
| Modifier and Type | Method and Description |
|---|---|
| pack-priv Symbol | accessBase(Symbol sym, JCDiagnostic.
Variant of the generalized access routine, to be used for generating variable, type resolution diagnostics |
| pack-priv Symbol | accessBase(Symbol sym, JCDiagnostic.
Same as original accessBase(), but without location. |
| pack-priv Symbol | accessInternal(Symbol
The symbol that was found, or a ResolveError. sym, JCDiagnostic.The position to use for error reporting. pos,The symbol the served as a context for this lookup location, Type The original type from where the selection took place. site, Name The symbol's name. name, boolean Did we get here through a qualified expression resolution? qualified, List<Type> The invocation's value arguments,
if we looked for a method. argtypes, List<Type> The invocation's type arguments,
if we looked for a method. typeargtypes, Resolve.helper class used to log resolve errors logResolveHelperIf `sym' is a bad symbol: report error and return errSymbol else pass through unchanged, additional arguments duplicate what has been used in trying to find the symbol (--> flyweight pattern). |
| pack-priv Symbol | accessMethod(Symbol sym, JCDiagnostic.
Variant of the generalized access routine, to be used for generating method resolution diagnostics |
| pack-priv Symbol | accessMethod(Symbol sym, JCDiagnostic.
Same as original accessMethod(), but without location. |
| pack-priv List | |
| pack-priv Symbol | |
| private static Symbol | |
| pack-priv void | checkAccessibleType(Env<AttrContext> env, Type t)
Performs a recursive scan of a type looking for accessibility problems from current attribution environment |
| pack-priv Type | checkMethod(Env<AttrContext> env, Type site, Symbol m, Attr.
|
| pack-priv void | checkNonAbstract(JCDiagnostic.
Check that sym is not an abstract method. |
| private Symbol | |
| private Symbol | |
| private Symbol | |
| private void | dumpMethodReferenceSearchResults(JCTree.
|
| pack-priv Symbol | findConstructor(JCDiagnostic.
|
| private Symbol | findDiamond(JCDiagnostic.
The position to use for error reporting. pos,The environment current at the constructor invocation. env, Type The type of class for which a constructor is searched.
The scope of this class has been touched in attribution. site, List<Type> The types of the constructor invocation's value arguments. argtypes, List<Type> The types of the constructor invocation's type arguments. typeargtypes, boolean Allow boxing conversions of arguments. allowBoxing, boolean Box trailing arguments into an array for varargs. useVarargs)Find the constructor using diamond inference and do some checks(deprecated and preview). |
| private Symbol | findDiamond(Env<AttrContext> env, Type site, List<Type> argtypes, List<Type> typeargtypes, boolean allowBoxing, boolean useVarargs)
This method scans all the constructor symbol in a given class scope -
assuming that the original scope contains a constructor of the kind:
|
| pack-priv Symbol | findField(Env<AttrContext>
The current environment. env, Type The original type from where the selection takes place. site, Name The name of the field. name, Symbol.The class to search for the field. This is always
a superclass or implemented interface of site's class. cFind field. |
| pack-priv Symbol | findFun(Env<AttrContext>
The current environment. env, Name The method's name. name, List<Type> The method's value arguments. argtypes, List<Type> The method's type arguments. typeargtypes, boolean Allow boxing conversions of arguments. allowBoxing, boolean Box trailing arguments into an array for varargs. useVarargs)Find unqualified method matching given name, type and value arguments. |
| pack-priv Symbol | findGlobalType(Env<AttrContext>
The current environment. env, Scope The scope in which to look for the type. scope, Name The type's name. name, Resolve.Find a global type in given scope and load corresponding class. |
| pack-priv Symbol | findIdent(JCDiagnostic.
position on which report warnings, if any;
null warnings should not be reported pos,The current environment. env, Name The identifier's name. name, Kinds.Indicates the possible symbol kinds
(a subset of VAL, TYP, PCK). kindFind an unqualified identifier which matches a specified kind set. |
| pack-priv Symbol | findIdentInPackage(JCDiagnostic.
position on which report warnings, if any;
null warnings should not be reported pos,The current environment. env, Symbol.The identifier's name. name, Kinds.Indicates the possible symbol kinds
(a nonempty subset of TYP, PCK). kindFind an identifier in a package which matches a specified kind set. |
| pack-priv Symbol | findIdentInPackageInternal(Env<AttrContext> env, Symbol.
|
| pack-priv Symbol | findIdentInternal(JCDiagnostic.
|
| pack-priv Symbol | findIdentInType(JCDiagnostic.
position on which report warnings, if any;
null warnings should not be reported pos,The current environment. env, Type The type containing the symbol to be found. site, Name The identifier's name. name, Kinds.Indicates the possible symbol kinds
(a subset of VAL, TYP). kindFind an identifier among the members of a given type `site'. |
| pack-priv Symbol | |
| pack-priv Symbol | findImmediateMemberType(Env<AttrContext>
The current environment. env, Type The original type from where the selection takes
place. site, Name The type's name. name, Symbol.The class to search for the member type. This is
always a superclass or implemented interface of
site's class. cFind a type declared in a scope (not inherited). |
| pack-priv Symbol | findInheritedMemberType(Env<AttrContext>
The current environment. env, Type The original type from where the selection takes
place. site, Name The type's name. name, Symbol.The class to search for the member type. This is
always a superclass or implemented interface of
site's class. cFind a member type inherited from a superclass or interface. |
| pack-priv Symbol | findLocalClassOwner(Env<AttrContext> env, Symbol.
Resolve the (method) owner of a local class. |
| pack-priv Symbol | findMemberType(Env<AttrContext>
The current environment. env, Type The original type from where the selection takes
place. site, Name The type's name. name, Symbol.The class to search for the member type. This is
always a superclass or implemented interface of
site's class. cFind qualified member type. |
| pack-priv Symbol | findMethod(Env<AttrContext>
The current environment. env, Type The original type from where the selection
takes place. site, Name The method's name. name, List<Type> The method's value arguments. argtypes, List<Type> The method's type arguments typeargtypes, boolean Allow boxing conversions of arguments. allowBoxing, boolean Box trailing arguments into an array for varargs. useVarargs)Find best qualified method matching given name, type and value arguments. |
| private Symbol | |
| pack-priv Symbol | |
| pack-priv Symbol | findPolymorphicSignatureInstance(Env<AttrContext>
Attribution environment env, final Symbol signature polymorphic method - i.e. MH.invokeExact spMethod, List<Type> The required argument types argtypes)Find or create an implicit method of exactly the given type (after erasure). |
| pack-priv Symbol | |
| pack-priv Symbol | findSelfContaining(JCDiagnostic.
Find a "valid" reference to an enclosing 'A.this' such that A is a subclass of the provided class symbol. |
| pack-priv Symbol | findType(Env<AttrContext>
The current environment. env, Name The type's name. name)Find an unqualified type symbol. |
| pack-priv Symbol | |
| pack-priv Symbol | findVar(JCDiagnostic.
The position to use for error reporting. pos,The current environment. env, Name The name of the variable or field. name)Find unqualified variable or field with given name. |
| pack-priv Symbol | getMemberReference(JCDiagnostic.
|
| pack-priv JCDiagnostic | |
| pack-priv JCDiagnostic | |
| pack-priv JCDiagnostic | |
| public static Resolve | |
| pack-priv Type | instantiate(Env<AttrContext> env, Type site, Symbol m, Attr.
Same but returns null instead throwing a NoInstanceException |
| public boolean | isAccessible(Env<AttrContext>
The current environment. env, Symbol.The class whose accessibility is checked. cIs class accessible in given environment? |
| public boolean | |
| pack-priv boolean | |
| pack-priv boolean | |
| public boolean | isAccessible(Env<AttrContext>
The current environment. env, Type The type of which the tested symbol is regarded
as a member. site, Symbol The symbol. sym)Is symbol accessible as a member of given type in given environment? |
| public boolean | |
| private boolean | isAllowedEarlyReference(JCDiagnostic.
Determine if an early instance field reference may appear in a constructor prologue. |
| public boolean | isEarlyReference(Env<AttrContext>
The current environment env, JCTree Variable qualifier, if any, otherwise null base, Symbol.The variable vDetermine if the variable appearance constitutes an early reference to the current class. |
| private boolean | |
| pack-priv static boolean | isInitializer(Env<AttrContext> env)
An environment is an "initializer" if it is a constructor or an instance initializer. |
| private boolean | isInnerSubClass(Symbol.
The class which is the subclass or is contained in it. c,The base class base)Is given class a subclass of given base class, or an inner class of a subclass? |
| private boolean | isProtectedAccessible(Symbol
The symbol with protected access sym, Symbol.The class where the access takes place c,The type of the qualifier site)Is given protected symbol accessible if it is selected from given site and the selection takes place in given class? |
| private boolean | |
| pack-priv boolean | |
| protected static boolean | isStatic(Env<AttrContext> env)
An environment is "static" if its static level is greater than the one of its outer environment |
| pack-priv Symbol | loadClass(Env<AttrContext>
The current environment. env, Name The fully qualified name of the class to be loaded. name, Resolve.Load toplevel or member class with given fully qualified name and verify that it is accessible. |
| public void | |
| private void | logResolveError(Resolve.
|
| private <S extends Symbol> Symbol | lookupInvisibleSymbol(Env<AttrContext> env, Name name, Function<Name, Iterable<S>> get, BiFunction<Symbol.
|
| pack-priv Symbol | lookupMethod(Env<AttrContext> env, JCDiagnostic.
Main overload resolution routine. |
| pack-priv Symbol | lookupMethod(Env<AttrContext> env, JCDiagnostic.
|
| pack-priv Symbol | |
| pack-priv Resolve. | makeReferenceLookupHelper(JCTree.
|
| public Object | |
| pack-priv Symbol | mostSpecific(List<Type> argtypes, Symbol m1, Symbol m2, Env<AttrContext> env, final Type site, boolean useVarargs)
|
| private boolean | |
| private Resolve. | |
| private boolean | |
| private List | |
| pack-priv Type | rawInstantiate(Env<AttrContext>
The current environment env, Type The type of which the method is a member. site, Symbol The method symbol. m, Attr.The invocation's given value arguments. argtypes, List<Type> The invocation's given type arguments. typeargtypes, boolean Allow boxing conversions of arguments. allowBoxing, boolean Box trailing arguments into an array for varargs. useVarargs, Warner warn)Try to instantiate the type of a method so that it fits given type arguments and argument types. |
| pack-priv void | reportVerboseResolutionDiagnostic(JCDiagnostic.
|
| pack-priv Symbol | resolveConstructor(JCDiagnostic.
The position to use for error reporting. pos,The environment current at the constructor invocation. env, Type The type of class for which a constructor is searched. site, List<Type> The types of the constructor invocation's value
arguments. argtypes, List<Type> The types of the constructor invocation's type
arguments. typeargtypes)Resolve constructor. |
| private Symbol | resolveConstructor(Resolve.
|
| pack-priv Symbol | resolveDiamond(JCDiagnostic.
The position to use for error reporting. pos,The environment current at the constructor invocation. env, Type The type of class for which a constructor is searched.
The scope of this class has been touched in attribution. site, List<Type> The types of the constructor invocation's value
arguments. argtypes, List<Type> The types of the constructor invocation's type
arguments. typeargtypes)Resolve constructor using diamond inference. |
| pack-priv Symbol | resolveIdent(JCDiagnostic.
The position to use for error reporting. pos,The environment current at the identifier use. env, Name The identifier's name. name, Kinds.The set of admissible symbol kinds for the identifier. kindResolve an unqualified (non-method) identifier. |
| public Symbol. | resolveInternalConstructor(JCDiagnostic.
The position to use for error reporting. pos,The environment current at the method invocation. env, Type The type to be constructed. site, List<Type> The types of the invocation's value arguments. argtypes, List<Type> The types of the invocation's type arguments. typeargtypes)Resolve a constructor, throw a fatal error if not found. |
| public Symbol. | resolveInternalField(JCDiagnostic.
The position to use for error reporting. pos,The environment current at the method invocation. env, Type The type of the qualifying expression, in which
identifier is searched. site, Name The identifier's name. name)Resolve a field identifier, throw a fatal error if not found. |
| public Symbol. | resolveInternalMethod(JCDiagnostic.
The position to use for error reporting. pos,The environment current at the method invocation. env, Type The type of the qualifying expression, in which
identifier is searched. site, Name The identifier's name. name, List<Type> The types of the invocation's value arguments. argtypes, List<Type> The types of the invocation's type arguments. typeargtypes)Resolve a qualified method identifier, throw a fatal error if not found. |
| pack-priv Pair | resolveMemberReference(Env<AttrContext> env, JCTree.
Resolution of member references is typically done as a single overload resolution step, where the argument types A are inferred from the target functional descriptor. |
| pack-priv Symbol | resolveMethod(JCDiagnostic.
The position to use for error reporting. pos,The environment current at the method invocation. env, Name The identifier's name. name, List<Type> The types of the invocation's value arguments. argtypes, List<Type> The types of the invocation's type arguments. typeargtypes)Resolve an unqualified method identifier. |
| pack-priv Symbol | resolveQualifiedMethod(JCDiagnostic.
The position to use for error reporting. pos,The environment current at the method invocation. env, Type The type of the qualifying expression, in which
identifier is searched. site, Name The identifier's name. name, List<Type> The types of the invocation's value arguments. argtypes, List<Type> The types of the invocation's type arguments. typeargtypes)Resolve a qualified method identifier |
| pack-priv Symbol | resolveQualifiedMethod(JCDiagnostic.
|
| private Symbol | resolveQualifiedMethod(Resolve.
|
| pack-priv Symbol | resolveSelf(JCDiagnostic.
The position to use for error reporting. pos,The environment current at the expression. env, Symbol.The type of the selected expression c,The expression treeResolve `c.name' where name == this or name == super. |
| pack-priv Symbol | selectBest(Env<AttrContext>
The current environment. env, Type The original type from where the
selection takes place. site, List<Type> The invocation's value arguments, argtypes, List<Type> The invocation's type arguments, typeargtypes, Symbol Proposed new best match. sym, Symbol Previously found best match. bestSoFar, boolean Allow boxing conversions of arguments. allowBoxing, boolean Box trailing arguments into an array for varargs. useVarargs)Select the best method for a call site among two choices. |
| private boolean | signatureMoreSpecific(List<Type> actuals, Env<AttrContext> env, Type site, Symbol m1, Symbol m2, boolean useVarargs)
|
| pack-priv Iterable | |
| private boolean |