public class LockAnnotatedTypeFactory extends BasicAnnotatedTypeFactory<LockChecker>
Lock type system.
The annotated types returned by class contain GuardedBy type
qualifiers only for the locks that are not currently held.AnnotatedTypeFactory.InheritedFromClassAnnotatorchecker, defaults, flow, FLOW_BY_DEFAULT, poly, treeAnnotator, typeAnnotator, useFlowannotations, atypes, elements, env, fromTreeCache, qualHierarchy, root, trees, types, uid, visitorState| Constructor and Description |
|---|
LockAnnotatedTypeFactory(LockChecker checker,
@Nullable CompilationUnitTree root) |
| Modifier and Type | Method and Description |
|---|---|
@Nullable AnnotationMirror |
aliasedAnnotation(@Nullable AnnotationMirror a)
Returns the canonical annotation for the passed annotation if it is
an alias of a canonical one in the framework.
|
protected void |
annotateImplicit(@Nullable Tree tree,
@Mutable AnnotatedTypeMirror type)
Adds implicit annotations to a type obtained from a
Tree. |
List<@ReadOnly String> |
getHeldLock() |
void |
setHeldLocks(List<@ReadOnly String> heldLocks) |
annotateImplicit, annotateImplicit, constructorFromUse, createFlow, createFlowQualifiers, createTreeAnnotator, createTypeAnnotator, getDefaultedAnnotatedType, methodFromUse, postDirectSuperTypes, postInitaddAliasedAnnotation, annotateInheritedFromClass, canHaveAnnotatedTypeParameters, createLRUCache, declarationFromElement, fromClass, fromElement, fromElement, fromElement, fromExpression, fromMember, fromNewClass, fromTypeTree, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedType, getAnnotatedTypeFromTypeTree, getBoxedType, getCurrentClassTree, getCurrentClassType, getCurrentMethodReceiver, getDeclAnnotation, getEnclosingType, getImplicitReceiverType, getPath, getQualifierHierarchy, getReceiverType, getSelfType, getUnboxedType, getVisitorState, isAnyEnclosingThisDeref, isMostEnclosingThisDeref, isSupportedQualifier, isWithinConstructor, postAsMemberOf, toAnnotatedType, toString, typeVariablesFromUse, unifypublic LockAnnotatedTypeFactory(LockChecker checker, @Nullable CompilationUnitTree root)
protected void annotateImplicit(@Nullable Tree tree, @Mutable AnnotatedTypeMirror type)
AnnotatedTypeFactoryTree. By
default, this method does nothing. Subclasses should use this method to
implement implicit annotations specific to their type systems.annotateImplicit in class BasicAnnotatedTypeFactory<LockChecker>tree - an AST nodetype - the type obtained from treepublic @Nullable AnnotationMirror aliasedAnnotation(@Nullable AnnotationMirror a)
AnnotatedTypeFactoryaliasedAnnotation in class AnnotatedTypeFactory