Modifier and Type | Class and Description |
---|---|
private class |
Overrides.ExplicitOverrides.TypeSubstVisitor
Visitor that replaces type variables with their values in the types it sees.
|
Overrides.ExplicitOverrides, Overrides.NativeOverrides
Modifier and Type | Field and Description |
---|---|
private javax.lang.model.util.Types |
typeUtils |
Constructor and Description |
---|
ExplicitOverrides(javax.lang.model.util.Types typeUtils) |
Modifier and Type | Method and Description |
---|---|
private javax.lang.model.element.TypeElement |
asTypeElement(javax.lang.model.type.TypeMirror typeMirror) |
(package private) com.google.common.collect.ImmutableList<javax.lang.model.type.TypeMirror> |
erasedParameterTypes(javax.lang.model.element.ExecutableElement method,
javax.lang.model.element.TypeElement in)
Returns the list of erased parameter types of the given method as they appear in the given
type.
|
private boolean |
isSubsignature(javax.lang.model.element.ExecutableElement overrider,
javax.lang.model.element.ExecutableElement overridden,
javax.lang.model.element.TypeElement in) |
(package private) javax.lang.model.element.ExecutableElement |
methodFromSuperclasses(javax.lang.model.element.TypeElement in,
javax.lang.model.element.ExecutableElement method)
Returns the given method as it appears in the given type.
|
(package private) javax.lang.model.element.ExecutableElement |
methodFromSuperinterfaces(javax.lang.model.element.TypeElement in,
javax.lang.model.element.ExecutableElement method)
Returns the given interface method as it appears in the given type.
|
private javax.lang.model.element.ExecutableElement |
methodInType(javax.lang.model.element.TypeElement type,
javax.lang.model.element.ExecutableElement method)
Returns the method from within the given type that has the same erased signature as the given
method, or null if there is no such method.
|
boolean |
overrides(javax.lang.model.element.ExecutableElement overrider,
javax.lang.model.element.ExecutableElement overridden,
javax.lang.model.element.TypeElement in) |
private javax.lang.model.element.TypeElement |
superclass(javax.lang.model.element.TypeElement type) |
private com.google.common.collect.ImmutableList<javax.lang.model.element.TypeElement> |
superinterfaces(javax.lang.model.element.TypeElement type) |
public boolean overrides(javax.lang.model.element.ExecutableElement overrider, javax.lang.model.element.ExecutableElement overridden, javax.lang.model.element.TypeElement in)
private boolean isSubsignature(javax.lang.model.element.ExecutableElement overrider, javax.lang.model.element.ExecutableElement overridden, javax.lang.model.element.TypeElement in)
com.google.common.collect.ImmutableList<javax.lang.model.type.TypeMirror> erasedParameterTypes(javax.lang.model.element.ExecutableElement method, javax.lang.model.element.TypeElement in)
add(E)
from List<E>
and we ask how it
appears in class NumberList implements List<Number>
, the answer will be
Number
. That will also be the answer for class NumberList<E extends Number>
implements List<E>
. The parameter types are erased since the purpose of this method is to
determine whether two methods are candidates for one to override the other.javax.lang.model.element.ExecutableElement methodFromSuperclasses(javax.lang.model.element.TypeElement in, javax.lang.model.element.ExecutableElement method)
javax.lang.model.element.ExecutableElement methodFromSuperinterfaces(javax.lang.model.element.TypeElement in, javax.lang.model.element.ExecutableElement method)
private javax.lang.model.element.ExecutableElement methodInType(javax.lang.model.element.TypeElement type, javax.lang.model.element.ExecutableElement method)
private javax.lang.model.element.TypeElement superclass(javax.lang.model.element.TypeElement type)
private com.google.common.collect.ImmutableList<javax.lang.model.element.TypeElement> superinterfaces(javax.lang.model.element.TypeElement type)
private javax.lang.model.element.TypeElement asTypeElement(javax.lang.model.type.TypeMirror typeMirror)