Interface Summary Interface Description GuardedByBinder.ResolverA context containing the information necessary to resolve a
Symbolfrom an AST node.
HeldLockAnalyzer.LockEventListenerListener interface for accesses to guarded members. ImmutableAnalysis.ViolationReporterAccepts
violationsthat are found during the analysis.
ThreadSafety.KnownTypesInformation about known types and whether they're known to be safe or unsafe.
Class Summary Class Description AbstractLockMethodCheckerAbstract implementation of checkers for
AnnotationInfoSpecifies information about a type which may be a container specified by generic type arguments, e.g. DoubleCheckedLocking GuardedByBinderA binder from
GuardedByChecker GuardedByExpressionThe lock expression of an
GuardedByExpression.ClassLiteralA 'class' literal: ClassName.class GuardedByExpression.ErroneousA guarded by expression that could not be resolved. GuardedByExpression.FactoryMakes
GuardedByExpression.LocalVariableA local variable (or parameter), resolved as part of a lock access expression. GuardedByExpression.SelectThe member access expression for a field or method. GuardedByExpression.ThisLiteralA simple 'this literal. GuardedByExpression.TypeLiteralThe base expression for a static member select on a class literal (e.g. GuardedByFlagsFlags that control the behavior of threadsafety utils to facilitate rolling out new functionality. GuardedBySymbolResolverA symbol resolver used while binding guardedby expressions from string literals. GuardedByUtils HeldLockAnalyzerA method body analyzer. HeldLockAnalyzer.ExpectedLockCalculatorUtility for discovering the lock expressions that needs to be held when accessing specific guarded members. ImmutableAnalysisAnalyzes types for deep immutability. ImmutableAnnotationChecker ImmutableChecker ImmutableEnumChecker ImmutableRefactoring LockMethodChecker StaticGuardedByInstance SynchronizeOnNonFinalField ThreadPriorityCheckBug checker to detect usage of
Thread.yield(), and changing thread priorities.
ThreadSafetyA class which gives information about the annotation of types; if a type isn't annotated,
ThreadSafety.Violationgives information as to why it is not.
ThreadSafety.ViolationA human-friendly explanation of a thread safety violations. UnlockMethodChecker WellKnownMutabilityA collection of types with known mutability.
Exception Summary Exception Description IllegalGuardedByAn error that occurred during the parsing or binding of a GuardedBy expression.