All Classes

Class Description
AbstractTypeMatcher<T extends com.sun.source.tree.Tree>
Base class for type matchers.
AccessPath
A sequence of field names or autovalue accessors, along with a receiver: either a variable or a reference (explicit or implicit) to this.
AccessPathStore<V extends org.checkerframework.shaded.dataflow.analysis.AbstractValue<V>>
Immutable map from local variables or heap access paths to their AbstractValue
AccessPathStore.Builder<V extends org.checkerframework.shaded.dataflow.analysis.AbstractValue<V>>
Builder for AccessPathStore instances.
AccessPathValues<T>
Read-only access to AccessPathStore for convenience.
AdjustedPosition
Describes a tree position with adjustments to the start and end indices.
AnnotationDoesNotHaveArgument
Matches an annotation that does not have a particular argument, possibly because the default value is being used.
AnnotationHasArgumentWithValue  
AnnotationMatcher<T extends com.sun.source.tree.Tree>
Matches if the given annotation matcher matches all of or any of the annotations on the tree node.
AnnotationMatcherUtils
Utilities for matching annotations.
AnnotationType  
Any
Matches any type.
AppliedFix
Represents the corrected source which we think was intended, by applying a Fix.
AppliedFix.Applier  
Array
Matches arrays.
Asserts
Matches assert statements which have a condition expression matched by the given matcher.
ASTHelpers
This class contains utility methods to work with the javac AST.
ASTHelpers.ScanThrownTypes
Scanner for determining what types are thrown by a tree.
ASTHelpers.TargetType
BaseErrorProneJavaCompiler
An Error Prone compiler that implements JavaCompiler.
BranchedSuggestedFixes
Helper class for accumulating a branching tree of alternative fixes designed to help build as set of potential fixes with different options in them.
BranchedSuggestedFixes.Builder
Builder class for BranchedSuggestedFixes
BugChecker
A base class for implementing bug checkers.
BugChecker.AnnotatedTypeTreeMatcher  
BugChecker.AnnotationTreeMatcher  
BugChecker.ArrayAccessTreeMatcher  
BugChecker.ArrayTypeTreeMatcher  
BugChecker.AssertTreeMatcher  
BugChecker.AssignmentTreeMatcher  
BugChecker.BinaryTreeMatcher  
BugChecker.BlockTreeMatcher  
BugChecker.BreakTreeMatcher  
BugChecker.CaseTreeMatcher  
BugChecker.CatchTreeMatcher  
BugChecker.ClassTreeMatcher  
BugChecker.CompilationUnitTreeMatcher  
BugChecker.CompoundAssignmentTreeMatcher  
BugChecker.ConditionalExpressionTreeMatcher  
BugChecker.ContinueTreeMatcher  
BugChecker.DoWhileLoopTreeMatcher  
BugChecker.EmptyStatementTreeMatcher  
BugChecker.EnhancedForLoopTreeMatcher  
BugChecker.ExpressionStatementTreeMatcher  
BugChecker.ForLoopTreeMatcher  
BugChecker.IdentifierTreeMatcher  
BugChecker.IfTreeMatcher  
BugChecker.ImportTreeMatcher  
BugChecker.InstanceOfTreeMatcher  
BugChecker.IntersectionTypeTreeMatcher  
BugChecker.LabeledStatementTreeMatcher  
BugChecker.LambdaExpressionTreeMatcher  
BugChecker.LiteralTreeMatcher  
BugChecker.MemberReferenceTreeMatcher  
BugChecker.MemberSelectTreeMatcher  
BugChecker.MethodInvocationTreeMatcher  
BugChecker.MethodTreeMatcher  
BugChecker.ModifiersTreeMatcher  
BugChecker.NewArrayTreeMatcher  
BugChecker.NewClassTreeMatcher  
BugChecker.ParameterizedTypeTreeMatcher  
BugChecker.ParenthesizedTreeMatcher  
BugChecker.PrimitiveTypeTreeMatcher  
BugChecker.ReturnTreeMatcher  
BugChecker.SwitchTreeMatcher  
BugChecker.SynchronizedTreeMatcher  
BugChecker.ThrowTreeMatcher  
BugChecker.TryTreeMatcher  
BugChecker.TypeCastTreeMatcher  
BugChecker.TypeParameterTreeMatcher  
BugChecker.UnaryTreeMatcher  
BugChecker.UnionTypeTreeMatcher  
BugChecker.VariableTreeMatcher  
BugChecker.WhileLoopTreeMatcher  
BugChecker.WildcardTreeMatcher  
BugCheckerInfo
An accessor for information about a single bug checker, including the metadata in the check's @BugPattern annotation and the class that implements the check.
ChildMultiMatcher<T extends com.sun.source.tree.Tree,​N extends com.sun.source.tree.Tree>
A MultiMatcher that applies a matcher across multiple children of a single ancestor node.
ChildMultiMatcher.MatchType  
CodeTransformer
Interface for a transformation over Java source.
Commented<T extends com.sun.source.tree.Tree>
Class to hold AST nodes annotated with the comments that are associated with them
Commented.Position
Identifies the position of a comment relative to the associated treenode.
Comments
Utilities for attaching comments to relevant AST nodes
CompileTimeConstantExpressionMatcher
A matcher for compile-time-constant expressions.
CompositeCodeTransformer
Combines multiple CodeTransformers into one.
CompoundAssignment
Matcher for a compound-assignment operator expression.
ConstantPropagationAnalysis
An interface to the constant propagation analysis.
ConstructorMatchState
The state that is propagated across a match operation for constructors.
ConstructorOfClass
Applies the given matcher to the constructor(s) of the given class.
Contains
A matcher that recursively inspects a tree, applying the given matcher to all levels of each tree and returning true if any match is found.
DataFlow
Provides a wrapper around Analysis.
DataFlow.Result<A extends org.checkerframework.shaded.dataflow.analysis.AbstractValue<A>,​S extends org.checkerframework.shaded.dataflow.analysis.Store<S>,​T extends org.checkerframework.shaded.dataflow.analysis.TransferFunction<A,​S>>
A pair of Analysis and ControlFlowGraph.
DescendantOf
Matches sub-types of the given type.
DescendantOfAny
Matches types that are a sub-type of one of the given types.
Description
Simple data object containing the information captured about an AST match.
Description.Builder
Builder for Descriptions.
DescriptionBasedDiff
Implementation of a Diff that performs the modifications that are passed to its DescriptionBasedDiff.onDescribed(com.google.errorprone.matchers.Description) method, with no formatting.
DescriptionListener
Strategies for reporting results.
DescriptionListener.Factory
Factory for creating DescriptionListeners while compiling each file.
Diff
All the differences to be applied to a source file to be applied in a refactoring.
DiffApplier
Applier of diffs to Java source code
DiffNotApplicableException
Exception thrown if a Diff could not be applied by a DiffApplier
DiffSupplier
Supplier of file differences.
DiscardingFileDestination
File destination which simply throws away the generated file.
Enclosing
Adapt matchers to match against a parent node of a given type.
Enclosing.Block<T extends com.sun.source.tree.Tree>  
Enclosing.BlockOrCase<T extends com.sun.source.tree.Tree>  
Enclosing.Class<T extends com.sun.source.tree.Tree>  
Enclosing.Method<T extends com.sun.source.tree.Tree>  
ErrorProneAnalyzer
A TaskListener that runs Error Prone over attributed compilation units.
ErrorProneError
Wraps an unrecoverable error that occurs during analysis with the source position that triggered the crash.
ErrorProneFlags
Represents an immutable map of Error Prone flags to their set values.
ErrorProneFlags.Builder
Builder for Error Prone command-line flags object.
ErrorProneOptions
Processes command-line options specific to error-prone.
ErrorProneOptions.Severity
Severity levels for an error-prone check that define how the check results should be presented.
ErrorPronePlugins
Loads custom Error Prone checks from the annotation processor classpath.
ErrorProneScanner
Scans the parsed AST, looking for violations of any of the enabled checks.
ErrorProneScannerTransformer
Adapter from an ErrorProneScanner to a CodeTransformer.
ErrorProneTimings
A collection of timing data for the runtime of individual checks.
ErrorProneToken
Wraps a javac Tokens.Token to return comments in declaration order.
ErrorProneTokens
A utility for tokenizing and preserving comments.
ErrorProneVersion
The Error Prone version.
Exact
Matches types that exactly match the given type.
ExactAny
Matches types that exactly match one of the given types.
FieldMatchers
Static utility methods for creating Matchers for detecting references to fields.
FileDestination  
FileSource  
FindIdentifiers
A helper class to find all identifiers in scope at a given program point.
Fix
Represents a source code transformation, usually used to fix a bug detected by error-prone.
FsFileDestination
A FileDestination that writes content to a destination on the local filesystem.
FsFileSource
A FileSource that reads source files from the local filesystem.
HasArguments
Matches if the given matcher matches all of/any of the parameters to this method.
HasIdentifier
Matches if the given matcher matches all of the identifiers under this syntax tree.
IdeaImportOrganizer
Organizes imports based on the default format provided by IntelliJ IDEA.
ImportOrderParser
Parse import order strings.
ImportOrganizer
Organizes import statements when patching files.
ImportOrganizer.Import
Represents an import.
ImportOrganizer.OrganizedImports
Provides support for building a list of imports from groups and formatting it as a block of imports.
ImportStatements
Represents a list of import statements.
IndexedPosition
Describes a position that only has a start and end index.
InferredNullability
Results of running NullnessQualifierInference over a method.
InjectMatchers
Utility constants and matchers related to dependency injection.
InvalidCommandLineOptionException  
IsSameType<T extends com.sun.source.tree.Tree>
Matches an AST node if its erased type is the same as the given type, e.g.
IsSubtypeOf<T extends com.sun.source.tree.Tree>  
JavacErrorDescriptionListener
Making our errors appear to the user and break their build.
JavacInvocationInstance
A token uniquely identifying a single invocation of javac.
JUnitMatchers
Matchers for code patterns which appear to be JUnit-based tests.
LevenshteinEditDistance
A utility class for finding the Levenshtein edit distance between strings.
MaskedClassLoader
A classloader that allows plugins to access the Error Prone classes from the compiler classpath.
Matcher<T extends com.sun.source.tree.Tree>
Define a predicate on a Tree, which also accesses the state of AST traversal.
Matchers
Static factory methods which make the DSL read more fluently.
MatchState
The state that is propagated across a match operation.
MethodHasParameters
Matches if the given matcher matches all of/any of the parameters to this method.
MethodInfo
Represents a Java method.
MethodInvocation
Matches a method invocation based on a matcher for the method select (receiver + method identifier) and one for the arguments.
MethodInvocationArgument
Applies an Expression matcher to an argument of a MethodInvocation by position.
MethodInvocationMatcher
The machinery and type definitions necessary to model and compile a single efficient matcher out of a list of MethodMatchers.MethodMatchers.
MethodInvocationMatcher.MethodKind
The kinds of things that count as a method invocation.
MethodInvocationMatcher.Rule
A rule describing a set of constraints for a method invocation.
MethodInvocationMatcher.Token
A specific value for a property that a method invocation can have.
MethodInvocationMatcher.Token.DefinedIn
A token specifying the class or interface in which the invoked method was defined.
MethodInvocationMatcher.Token.Kind
A token limiting the MethodInvocationMatcher.Token.Kind of invocation to match.
MethodInvocationMatcher.Token.MethodName
A token limiting the name of the method being invoked.
MethodInvocationMatcher.Token.ParameterTypes
A token limiting the types of the formal parameters of the method being invoked.
MethodInvocationMatcher.Token.ReceiverSupertype
A token specifying that the class of the object on which the method is being invoked must be a subtype of another type.
MethodInvocationMatcher.Token.ReceiverType
A token specifying the exact type of the object on which the method is being invoked (or the class in which it is defined, for static methods).
MethodInvocationMatcher.TokenType
The kinds of properties a matcher can match against.
MethodInvocationMethodSelect
Adapts a matcher on MethodInvocationTree to match the MethodSelect of the MethodInvocation.
MethodMatchers  
MethodMatchers.AnyMethodMatcher Deprecated.
use Matcher<ExpressionTree> instead of referring directly to this type.
MethodMatchers.ConstructorClassMatcher Deprecated.
use Matcher<ExpressionTree> instead of referring directly to this type.
MethodMatchers.ConstructorMatcher Deprecated.
use Matcher<ExpressionTree> instead of referring directly to this type.
MethodMatchers.InstanceMethodMatcher Deprecated.
use Matcher<ExpressionTree> instead of referring directly to this type.
MethodMatchers.MethodClassMatcher Deprecated.
use Matcher<ExpressionTree> instead of referring directly to this type.
MethodMatchers.MethodMatcher Deprecated.
use Matcher<ExpressionTree> instead of referring directly to this type.
MethodMatchers.MethodNameMatcher Deprecated.
use Matcher<ExpressionTree> instead of referring directly to this type.
MethodMatchers.MethodSignatureMatcher Deprecated.
use Matcher<ExpressionTree> instead of referring directly to this type.
MethodMatchers.ParameterMatcher Deprecated.
use Matcher<ExpressionTree> instead of referring directly to this type.
MethodMatchers.StaticMethodMatcher Deprecated.
use Matcher<ExpressionTree> instead of referring directly to this type.
MethodVisibility
A matcher for method visibility (public, private, protected, or default).
MethodVisibility.Visibility
The visibility of a member.
MoreAnnotations
Annotation-related utilities.
MultiMatcher<T extends com.sun.source.tree.Tree,​N extends com.sun.source.tree.Tree>
An matcher that applies a single matcher across multiple tree nodes.
MultiMatcher.MultiMatchResult<N extends com.sun.source.tree.Tree>
A result from the call of MultiMatcher.multiMatchResult(Tree, VisitorState), containing information about whether it matched, and if so, what nodes matched.
NamingConventions
Utility functions for dealing with Java naming conventions
NeedlemanWunschEditDistance
The Needleman-Wunsch algorithm for finding least-cost string edit distances between pairs of strings.
Nullness
Represents one of the possible nullness values in our nullness analysis.
NullnessAnalysis
An interface to the nullness analysis.
NullnessAnnotations
Utilities to extract Nullness from annotations.
NullnessMatcher
Matches an expression based on the result of the nullness dataflow analysis.
NullnessQualifierInference
Eagerly traverse one MethodTree at a time and accumulate constraints between nullness qualifiers.
OperatorPrecedence
The precedence for an operator kind in the com.sun.source.tree API.
PatchFileDestination
A FileDestination that writes a unix-patch file to rootPath containing the suggested changes.
Reachability
An implementation of JLS 14.21 reachability.
Regexes
Utilities for checks that work with regexes.
Replacement
A replaced section of a source file.
Replacements
A collection of Replacements to be made to a source file.
Replacements.CoalescePolicy
A policy for handling overlapping insertions.
Returns
Matches a return statement whose returned expression is matched by the given matcher.
RuntimeVersion
JDK version string utilities.
Scanner
TODO(eaftan): I'm worried about this performance of this code, specifically the part that handles SuppressWarnings.
ScannerSupplier
Supplies Scanners and provides access to the backing sets of all BugCheckers and enabled BugCheckers.
SideEffectAnalysis
This class is responsible for analyzing an expression and telling if the expression can have side effects.
Signatures
Signature generation.
SourceCodeEscapers
A factory for Escaper instances used to escape strings for safe use in Java.
SourceFile
Representation of a mutable Java source file.
StatisticsCollector
A collector of counters keyed by strings.
StringLiteral  
SubContext
A view on top of a Context allowing additional modifications to be added without affecting the underlying Context.
SuggestedFix  
SuggestedFix.Builder
Builds SuggestedFixs.
SuggestedFixes
Factories for constructing Fixes.
SuggestedFixes.AdditionPosition
Instructs SuggestedFixes.addMembers(ClassTree, VisitorState, AdditionPosition, String, String...) whether to add the new member(s) at the beginning of the class, or at the end.
Supplier<T>
Simple supplier pattern, which allows delayed binding to access to runtime elements.
Suppliers  
Suppressible  
SuppressionInfo
Immutable container of "suppression signals" - annotations or other information gathered from source - that can be used to determine if a specific Suppressible object should be considered suppressed.
SuppressionInfo.SuppressedState  
TermEditDistance
A utility class for finding the distance between two identifiers.
TestNgMatchers
Matchers for code patterns which appear to be TestNG-based tests.
Throws
Matches a throw statement whose thrown expression is matched by the given matcher.
TrustingNullnessAnalysis
An interface to the "trusting" nullness analysis.
TypePredicate
A predicate for testing Types.
TypePredicates
A collection of TypePredicates.
Visibility
Describes visibilities available via VisibleForTesting annotations, and provides methods to establish whether a given Tree should be visible.
VisitorState  
WaitMatchers
Matchers for method invocations related to Object.wait() and Condition.await();