public class KeyForAnnotatedTypeFactory extends BasicAnnotatedTypeFactory<KeyForSubchecker>
AnnotatedTypeFactory.InheritedFromClassAnnotator
checker, defaults, flow, FLOW_BY_DEFAULT, poly, treeAnnotator, typeAnnotator, useFlow
elements, fromTreeCache, processingEnv, qualHierarchy, root, trees, types, uid, visitorState
Constructor and Description |
---|
KeyForAnnotatedTypeFactory(KeyForSubchecker checker,
CompilationUnitTree root) |
Modifier and Type | Method and Description |
---|---|
Pair<AnnotatedTypeMirror.AnnotatedExecutableType,List<AnnotatedTypeMirror>> |
methodFromUse(MethodInvocationTree call)
Determines the type of the invoked method based on the passed method
invocation tree.
|
annotateImplicit, annotateImplicit, constructorFromUse, createFlow, createFlowQualifiers, createQualifierDefaults, createQualifierPolymorphism, createTreeAnnotator, createTypeAnnotator, postDirectSuperTypes, postInit
addAliasedAnnotation, addAliasedDeclAnnotation, aliasedAnnotation, annotateInheritedFromClass, canHaveAnnotatedTypeParameters, createLRUCache, declarationFromElement, fromClass, fromElement, fromElement, fromElement, fromExpression, fromMember, fromNewClass, fromTypeTree, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedTypeFromTypeTree, getAnnotationWithMetaAnnotation, getBoxedType, getCurrentClassTree, getCurrentClassType, getCurrentMethodReceiver, getDeclAnnotation, getDeclAnnotations, getDeclAnnotationTree, getDeclAnnotationWithMetaAnnotation, getDefaultedAnnotatedType, getElementUtils, getEnclosingType, getImplicitReceiverType, getPath, getProcessingEnv, getQualifierHierarchy, getReceiverType, getSelfType, getUnboxedType, getUninferredMethodTypeArgument, getVisitorState, isAnyEnclosingThisDeref, isMostEnclosingThisDeref, isSupportedQualifier, isWithinConstructor, postAsMemberOf, toAnnotatedType, toString, type, typeVariablesFromUse
public KeyForAnnotatedTypeFactory(KeyForSubchecker checker, CompilationUnitTree root)
public Pair<AnnotatedTypeMirror.AnnotatedExecutableType,List<AnnotatedTypeMirror>> methodFromUse(MethodInvocationTree call)
AnnotatedTypeFactory
AnnotatedTypes#asMemberOf(AnnotatedTypeMirror, Element)
, and
customization based on receiver type should be in accordance to its
specification.
The return type is a pair of the type of the invoked method and
the (inferred) type arguments.
Note that neither the explicitly passed nor the inferred type arguments
are guaranteed to be subtypes of the corresponding upper bounds.
See method
BaseTypeVisitor.checkTypeArguments(Tree, List, List, List)
for the checks of type argument well-formedness.
Note that "this" and "super" constructor invocations are also handled by this
method. Method constructorFromUse
is only used for a constructor invocation
in a "new" expression.methodFromUse
in class BasicAnnotatedTypeFactory<KeyForSubchecker>
call
- the method invocation tree