All Classes Interface Summary Class Summary Enum Summary Exception Summary Annotation Types Summary
Class |
Description |
AbstractAsKeyOfSetOrMap |
Check for usage of Set<T> or Map<T, E> .
|
AbstractCollectionIncompatibleTypeMatcher |
Extracts the necessary information from a MethodInvocationTree to check whether calls to
a method are using incompatible types and to emit a helpful error message.
|
AbstractCollectionIncompatibleTypeMatcher.MatchResult |
|
AbstractLockMethodChecker |
Abstract implementation of checkers for @LockMethod and@UnlockMethod .
|
AbstractMockChecker<T extends Annotation> |
Helper for enforcing Annotations that disallow mocking.
|
AbstractMockChecker.MockForbidder |
A policy for determining what classes should not be mocked.
|
AbstractMockChecker.Reason |
An explanation of what type should not be mocked, and the reason why.
|
AbstractMockChecker.TypeExtractor<T extends com.sun.source.tree.Tree> |
An extension of Matcher to return, not just a boolean `matches`, but also extract some
type information about the Tree of interest.
|
AbstractMustBeClosedChecker |
|
AbstractMustBeClosedChecker.FixAggregator |
A strategy for handling and potentially combining multiple fixes.
|
AbstractReferenceEquality |
Abstract implementation of a BugPattern that detects the use of reference equality to compare
classes with value semantics.
|
AbstractReturnValueIgnored |
An abstract base class to match API usages in which the return value is not used.
|
AbstractToString |
An abstract matcher for implicit and explicit calls to Object.toString() , for use on
types that do not have a human-readable toString() implementation.
|
AbstractUseSwitch |
Helper for refactoring from if-else chains to switches.
|
AfterTemplate |
Desired "after" version of a refactoring.
|
AllowCodeBetweenLines |
Annotation on a Refaster rule to allow code between every pair of consecutive top-level
statements in @BeforeTemplates that do not refer to variables Refaster knows about and do not
break or return, and moves that code to the beginning of the @AfterTemplate.
|
AlmostJavadoc |
Flags comments which appear to be intended to be Javadoc, but are not started with an extra
* .
|
AlreadyChecked |
Bugpattern to find conditions which are checked more than once.
|
AlsoNegation |
Indicates that Refaster should, additionally, refactor the negation of this rule and its
corresponding before templates.
|
AlwaysThrows |
|
AmbiguousMethodReference |
|
AndroidInjectionBeforeSuper |
|
AndroidJdkLibsChecker |
Checks for uses of classes, fields, or methods that are not compatible with legacy Android
devices.
|
AnnotateFormatMethod |
|
AnnotationInfo |
Specifies information about a type which may be a container specified by generic type arguments,
e.g.
|
AnnotationMirrorToString |
|
AnnotationPosition |
Checks annotation positioning, and orphaned Javadocs.
|
AnnotationValueToString |
|
ApiDiff |
The difference between two APIs.
|
ApiDiff.ClassMemberKey |
A per class unique identifier for a field or method.
|
ApiDiffChecker |
A base Error Prone check implementation to enforce compliance with a given API diff.
|
ApiDiffProto |
|
ApiDiffProto.ClassDiff |
Protobuf type devtools.staticanalysis.errorprone.apidiff.ClassDiff
|
ApiDiffProto.ClassDiff.Builder |
Protobuf type devtools.staticanalysis.errorprone.apidiff.ClassDiff
|
ApiDiffProto.ClassDiff.DiffCase |
|
ApiDiffProto.ClassDiffOrBuilder |
|
ApiDiffProto.ClassMember |
Protobuf type devtools.staticanalysis.errorprone.apidiff.ClassMember
|
ApiDiffProto.ClassMember.Builder |
Protobuf type devtools.staticanalysis.errorprone.apidiff.ClassMember
|
ApiDiffProto.ClassMemberOrBuilder |
|
ApiDiffProto.Diff |
Protobuf type devtools.staticanalysis.errorprone.apidiff.Diff
|
ApiDiffProto.Diff.Builder |
Protobuf type devtools.staticanalysis.errorprone.apidiff.Diff
|
ApiDiffProto.DiffOrBuilder |
|
ApiDiffProto.EverythingDiff |
Protobuf type devtools.staticanalysis.errorprone.apidiff.EverythingDiff
|
ApiDiffProto.EverythingDiff.Builder |
Protobuf type devtools.staticanalysis.errorprone.apidiff.EverythingDiff
|
ApiDiffProto.EverythingDiffOrBuilder |
|
ApiDiffProto.MemberDiff |
Protobuf type devtools.staticanalysis.errorprone.apidiff.MemberDiff
|
ApiDiffProto.MemberDiff.Builder |
Protobuf type devtools.staticanalysis.errorprone.apidiff.MemberDiff
|
ApiDiffProto.MemberDiffOrBuilder |
|
ArgumentSelectionDefectChecker |
Checks the lexical distance between method parameter names and the argument names at call sites.
|
ArrayAsKeyOfSetOrMap |
Warns that users should not have an array as a key to a Set or Map
|
ArrayEquals |
|
ArrayFillIncompatibleType |
Checks when Arrays.fill(Object[], Object) is called with object types that are guaranteed to
result in an ArrayStoreException.
|
ArrayHashCode |
|
ArraysAsListPrimitiveArray |
|
ArrayToString |
|
AssertEqualsArgumentOrderChecker |
Checker to make sure that assertEquals-like methods are called with the arguments expected and
actual the right way round.
|
AssertFalse |
|
AssertionFailureIgnored |
|
AssertThrowsMultipleStatements |
|
AssertThrowsUtils |
Utility methods for refactoring try-fail pattern to assertThrows, which is preferred.
|
AssistedInjectAndInjectOnConstructors |
|
AssistedInjectAndInjectOnSameConstructor |
|
AssistedInjectScoping |
This checker matches iff *both* of the following conditions are true: 1) The class is assisted:
a) If there is a constructor that is annotated with @Inject and that constructor has at least one
parameter that is annotated with @Assisted.
|
AssistedParameters |
|
AsyncCallableReturnsNull |
Checks that AsyncCallable implementations do not directly return null .
|
AsyncFunctionReturnsNull |
Checks that AsyncFunction implementations do not directly return null .
|
AutoFactoryAtInject |
|
AutoValueBuilderDefaultsInConstructor |
See summary for details.
|
AutoValueConstructorOrderChecker |
Checker to make sure that constructors for AutoValue types are invoked with arguments in the
correct order.
|
AutoValueFinalMethods |
Checks the toString(), hashCode() and equals() methods are final in AutoValue classes.
|
AutoValueImmutableFields |
Flags mutable collections in AutoValue.
|
AutoValueSubclassLeaked |
Matches AutoValue_ uses outside the containing file.
|
BadAnnotationImplementation |
Checker that ensures implementations of Annotation override equals and hashCode.
|
BadComparable |
|
BadImport |
|
BadInstanceof |
Matches instanceof checks where the expression is a subtype of the checked type.
|
BadShiftAmount |
|
BanSerializableRead |
|
BareDotMetacharacter |
A BugChecker; see the associated BugPattern for details.
|
BeforeTemplate |
Desired "before" version of a refactoring.
|
BigDecimalEquals |
Matches use of BigDecimal#equals , which compares scale as well (which is not likely to be
intended).
|
BigDecimalLiteralDouble |
Matches usages of new BigDecimal(double) which lose precision.
|
BinderIdentityRestoredDangerously |
|
Bindings |
A type-safe map from objects of type Bindings.Key<V> , which consist of a String
key and a Bindings.Key subclass, to values of type V .
|
Bindings.Key<V> |
A key type for a Binding .
|
BindingToUnqualifiedCommonType |
|
BlockTemplate |
Template representing a sequence of consecutive statements.
|
BooleanParameter |
|
BoxedPrimitiveConstructor |
|
BoxedPrimitiveEquality |
|
BugPatternNaming |
See the summary .
|
BuiltInCheckerSuppliers |
Static helper class that provides ScannerSupplier s and BugChecker s for the
built-in Error Prone checks, as opposed to plugin checks or checks used in tests.
|
BundleDeserializationCast |
|
ByteBufferBackingArray |
Checks when ByteBuffer.array() is used without calling .arrayOffset() to know the offset of the
array, or when the buffer wasn't initialized using ByteBuffer.wrap() or ByteBuffer.allocate().
|
CacheLoaderNull |
|
CanBeStaticAnalyzer |
Analyzes trees for references to their enclosing instance.
|
CanBeStaticAnalyzer.CanBeStaticResult |
Stores the result of a can-be-static query.
|
CannotMockFinalClass |
Bug pattern to recognize attempts to mock final types.
|
CanonicalDuration |
|
CatchAndPrintStackTrace |
|
CatchFail |
|
CatchingUnchecked |
|
ChainedAssertionLosesContext |
Identifies calls to assertThat and similar methods inside the implementation of a
Subject assertion method.
|
ChainingConstructorIgnoresParameter |
Checks, if two constructors in a class both accept Foo foo and one calls the other, that
the caller passes foo as a parameter.
|
CharacterGetNumericValue |
Checks for use of Character.getNumericValue and UCharacter.getNumericValue
|
CheckedExceptionNotThrown |
Flags checked exceptions which are claimed to be thrown, but are not.
|
CheckNotNullMultipleTimes |
Checks for the same variable being checked against null twice in a method.
|
CheckReturnValue |
|
Choice<T> |
A representation of a choice with zero or more options, which may be evaluated lazily or
strictly.
|
ClassCanBeStatic |
|
ClassName |
|
ClassNamedLikeTypeParameter |
|
ClassNewInstance |
|
CloseableProvides |
|
CollectionIncompatibleType |
Checker for calling Object-accepting methods with types that don't match the type arguments of
their container types.
|
CollectionToArraySafeParameter |
|
CollectionUndefinedEquality |
Highlights use of Collection#contains (and others) with types that do not have
well-defined equals.
|
CollectorShouldNotUseState |
|
ComparableAndComparator |
|
ComparableType |
|
CompareToZero |
Suggests comparing the result of compareTo to only 0 .
|
ComparingThisWithNull |
Check for expressions containing this != null or this == null
|
ComparisonContractViolated |
|
ComparisonOutOfRange |
|
CompatibleWithMisuse |
|
CompileTimeConstantChecker |
Detects invocations of methods with a parameter annotated @CompileTimeConstant such that
the corresponding actual parameter is not a compile-time constant expression, and initialisation
of fields declared @CompileTimeConstant final such that the actual value is not a
compile-time constant expression.
|
ComplexBooleanConstant |
|
ComputeIfAbsentAmbiguousReference |
|
ConditionalExpressionNumericPromotion |
|
ConstantExpressions |
Helper for establishing whether expressions correspond to a constant expression.
|
ConstantExpressions.ConstantEquals |
Represents a binary equals call on two constant expressions.
|
ConstantExpressions.ConstantExpression |
Represents a constant expression.
|
ConstantExpressions.ConstantExpression.ConstantExpressionKind |
The kind of a constant expression.
|
ConstantExpressions.ConstantExpressionVisitor |
Visitor for scanning over the components of a constant expression.
|
ConstantExpressions.PureMethodInvocation |
Represents both a constant method call or a constant field/local access, depending on the
actual type of symbol .
|
ConstantExpressions.Truthiness |
Represents sets of things known to be true and false if a boolean statement evaluated true.
|
ConstantField |
|
ConstantOverflow |
|
ConstantPatternCompile |
|
ContainmentMatchers |
|
ControlFlowVisitor |
Analyzes a series of statements to determine whether they don't, sometimes, or never return.
|
ControlFlowVisitor.Result |
The state of whether a sequence of statements may return, break out of the visited statements,
or neither.
|
CouldNotResolveImportException |
Exception thrown when a class symbol could not be resolved by the compiler.
|
DaggerAnnotations |
A utility class for static analysis having to do with Dagger annotations.
|
DangerousLiteralNullChecker |
|
DateChecker |
Warns against suspect looking calls to Date APIs.
|
DateFormatConstant |
|
DeadException |
|
DeadThread |
|
DeduplicateConstants |
A checker that suggests deduplicating literals with existing constant variables.
|
DefaultCharset |
|
DefaultPackage |
Java classes shouldn't use default package.
|
DepAnn |
Matches the behaviour of the javac dep-ann Xlint warning.
|
DeprecatedVariable |
|
DifferentNameButSame |
Discourages using multiple names to refer to the same type within a file (e.g.
|
DiscardedPostfixExpression |
|
DistinctVarargsChecker |
ErrorProne checker to generate warning when method expecting distinct varargs is invoked with
same variable argument.
|
DivZero |
Matches the behaviour of javac's divzero xlint warning.
|
DoNotCallChecker |
|
DoNotCallSuggester |
If a method always throws an exception, consider annotating it with @DoNotCall to prevent
calls at compile-time instead failing at runtime.
|
DoNotClaimAnnotations |
|
DoNotMockAutoValue |
Suggests not mocking AutoValue classes.
|
DoNotMockChecker |
Points out if a Mockito or EasyMock mock is mocking an object that would be better off being
tested using an alternative instance.
|
DoubleBraceInitialization |
|
DoubleCheckedLocking |
|
DuplicateMapKeys |
Flags duplicate keys used in ImmutableMap construction.
|
DurationFrom |
Bans calls to Duration.from(temporalAmount) where temporalAmount is a Period .
|
DurationGetTemporalUnit |
Bans calls to Duration.get(temporalUnit) where temporalUnit is not
SECONDS or NANOS .
|
DurationTemporalUnit |
Bans calls to Duration APIs where the TemporalUnit is not
ChronoUnit.DAYS or it has an estimated duration (which is guaranteed to throw an
DateTimeException ).
|
DurationToLongTimeUnit |
Reports an error when a Duration or Instant is incorrectly decomposed in order to call an API
which accepts a <long, TimeUnit> pair.
|
ElementPredicates |
Predicates for Element objects related to dependency injection.
|
EmptyBlockTag |
Matches block tags (@param, @return, @throws,
@deprecated) with an empty description.
|
EmptyCatch |
|
EmptyIfStatement |
This checker finds and fixes empty statements after an if, with no else part.
|
EmptySetMultibindingContributions |
|
EmptyTopLevelDeclaration |
|
EqualsBrokenForNull |
|
EqualsGetClass |
|
EqualsHashCode |
|
EqualsIncompatibleType |
|
EqualsMissingNullable |
|
EqualsNaN |
|
EqualsNull |
|
EqualsReference |
|
EqualsUnsafeCast |
Checks for equals implementations making unsafe casts.
|
EqualsUsingHashCode |
Discourages implementing equals using hashCode .
|
EqualsWrongThing |
Checks for equals implementations comparing non-corresponding fields.
|
ErroneousThreadPoolConstructorChecker |
ErrorProne checker to generate warning whenever ThreadPoolExecutor
is constructed with different corePoolSize and maximumPoolSize using an unbounded
workQueue
|
ErrorProneJavaCompiler |
|
ErrorProneJavacPlugin |
A javac Plugin that runs Error Prone.
|
EscapedEntity |
Finds unescaped entities in Javadocs.
|
ExpectedExceptionChecker |
|
ExpressionTemplate |
Implementation of a template to match and replace an expression anywhere in an AST.
|
ExtendingJUnitAssert |
|
ExtendsAutoValue |
Makes sure that you are not extending a class that has @AutoValue as an annotation.
|
FallThrough |
|
FieldCanBeFinal |
|
FieldCanBeLocal |
Flags fields which can be replaced with local variables.
|
FieldCanBeStatic |
Finds fields which can be safely made static.
|
FieldMissingNullable |
|
Finally |
Matches the behaviour of javac's finally Xlint warning.
|
FloatCast |
|
FloatingPointAssertionWithinEpsilon |
Detects usages of Float,DoubleSubject.isWithin(TOLERANCE).of(EXPECTED) where there are no
other floating point values other than EXPECTED with satisfy the assertion, but
TOLERANCE is not zero.
|
FloatingPointLiteralPrecision |
|
FloggerArgumentToString |
|
FloggerFormatString |
|
FloggerLogString |
Detects invocations of LoggingApi.log(String) for which the argument is not a
compile-time constant and provides suggested alternatives.
|
FloggerLogVarargs |
|
FloggerLogWithCause |
Flags cases where there is an exception available that could be set as the cause in a log
message.
|
FloggerMessageFormat |
|
FloggerPassedAround |
Flags flogger instances being passed around.
|
FloggerRedundantIsEnabled |
|
FloggerRequiredModifiers |
Ensures that class-level FluentLogger objects are private static final.
|
FloggerSplitLogStatement |
Bugpattern to prevent splitting flogger log invocations into multiple statements.
|
FloggerStringConcatenation |
|
FloggerWithCause |
Flogger's withCause(Throwable) method checks
|
FloggerWithoutCause |
Detects Flogger log statements that pass Exceptions to the log method instead of using withCause.
|
ForEachIterable |
|
FormatString |
|
FormatStringAnnotationChecker |
|
FormatStringUtils |
Format string utilities.
|
FormatStringValidation |
Utilities for validating format strings.
|
FormatStringValidation.ValidationResult |
Description of an incorrect format method call.
|
ForOverrideChecker |
Verifies that methods marked ForOverride are only
called from the defining class.
|
FragmentInjection |
|
FragmentNotInstantiable |
|
FromTemporalAccessor |
Bans calls to javaTimeType.from(temporalAmount) where the call is guaranteed to either:
throw a DateTimeException at runtime (e.g., LocalDate.from(month) )
return the same parameter (e.g., Instant.from(instant) )
|
FunctionalInterfaceClash |
|
FunctionalInterfaceMethodChanged |
|
FutureReturnValueIgnored |
See BugPattern annotation.
|
FuturesGetCheckedIllegalExceptionType |
Checks for calls to Guava's Futures.getChecked method that will always fail because they
pass an incompatible exception type.
|
FuzzyEqualsShouldNotBeUsedInEqualsMethod |
|
GetClassOnAnnotation |
|
GetClassOnClass |
|
GetClassOnEnum |
|
GuardedByBinder |
|
GuardedByBinder.Resolver |
A context containing the information necessary to resolve a Symbol from an AST node.
|
GuardedByChecker |
|
GuardedByExpression |
The lock expression of an @GuardedBy annotation.
|
GuardedByExpression.ClassLiteral |
A 'class' literal: ClassName.class
|
GuardedByExpression.Erroneous |
A guarded by expression that could not be resolved.
|
GuardedByExpression.Factory |
|
GuardedByExpression.Kind |
|
GuardedByExpression.LocalVariable |
A local variable (or parameter), resolved as part of a lock access expression.
|
GuardedByExpression.Select |
The member access expression for a field or method.
|
GuardedByExpression.ThisLiteral |
A simple 'this literal.
|
GuardedByExpression.TypeLiteral |
The base expression for a static member select on a class literal (e.g.
|
GuardedByFlags |
Flags that control the behavior of threadsafety utils to facilitate rolling out new
functionality.
|
GuardedBySymbolResolver |
A symbol resolver used while binding guardedby expressions from string literals.
|
GuardedByUtils |
|
HardCodedSdCardPath |
|
HashtableContains |
|
HeldLockAnalyzer |
A method body analyzer.
|
HeldLockAnalyzer.ExpectedLockCalculator |
Utility for discovering the lock expressions that needs to be held when accessing specific
guarded members.
|
HeldLockAnalyzer.LockEventListener |
Listener interface for accesses to guarded members.
|
HidingField |
|
IdentityBinaryExpression |
|
IdentityHashMapBoxing |
|
IdentityHashMapUsage |
|
IgnoredPureGetter |
Flags ignored return values from pure getters.
|
IllegalGuardedBy |
An error that occurred during the parsing or binding of a GuardedBy expression.
|
ImmutableAnalysis |
Analyzes types for deep immutability.
|
ImmutableAnalysis.ViolationReporter |
Accepts violations that are found during the analysis.
|
ImmutableAnnotationChecker |
|
ImmutableChecker |
|
ImmutableCollections |
Common utility functions for immutable collections.
|
ImmutableEnumChecker |
|
ImmutableMemberCollection |
Refactoring to suggest Immutable types for member collection that are not mutated.
|
ImmutableRefactoring |
|
ImmutableSetForContains |
Refactoring to suggest using private static final ImmutableSet over ImmutableList when using only contains, containsAll and isEmpty.
|
ImplementAssertionWithChaining |
Migrates Truth subjects from a manual "test and fail" approach to one using
Subject.check(...) .
|
ImportPolicy |
Policy specifying when and how to import classes when inlining types.
|
Incomparable |
|
IncompatibleArgumentType |
|
IncompatibleModifiersChecker |
|
InconsistentCapitalization |
Checker for variables under the same scope that only differ in capitalization.
|
InconsistentHashCode |
Looks for hashCode implementations which are inconsistent with equals.
|
InconsistentOverloads |
A BugChecker that detects inconsistently overloaded methods in Java classes.
|
IncorrectMainMethod |
Bugpattern for incorrect overloads of main.
|
IncrementInForLoopAndHeader |
|
IndexOfChar |
|
InexactVarargsConditional |
|
InfiniteRecursion |
|
InheritDoc |
Matches invalid usage of @inheritDoc.
|
InitializeInline |
Bugpattern to encourage initializing effectively final variables inline with their declaration,
if possible.
|
InjectedConstructorAnnotations |
A checker for injected constructors with @Inject(optional=true) or binding annotations.
|
InjectOnConstructorOfAbstractClass |
|
InjectOnFinalField |
|
InjectOnMemberAndConstructor |
Checks if class constructor and members are both annotated as @Inject.
|
InlineFormatString |
|
Inliner |
Checker that performs the inlining at call-sites (where the invoked APIs are annotated as
@InlineMe ).
|
Inliner |
A context representing all the dependencies necessary to reconstruct a pretty-printable source
tree from a UTree based on a set of substitutions.
|
InputStreamSlowMultibyteRead |
Checks that InputStreams should override int read(byte[], int, int);
|
InsecureCipherMode |
|
InstanceOfAndCastMatchWrongType |
|
InstantTemporalUnit |
Bans calls to Instant APIs where the TemporalUnit is not one
of: NANOS , MICROS , MILLIS , SECONDS , MINUTES ,
HOURS , HALF_DAYS , or DAYS .
|
InterfaceWithOnlyStatics |
Bugpattern to detect interfaces used only to store static fields/methods.
|
InterruptedExceptionSwallowed |
Checks for cases where an InterruptedException is caught as part of a catch block
catching a supertype, and not specially handled.
|
IntLongMath |
|
InvalidBlockTag |
Matches invalid Javadoc tags, and tries to suggest fixes.
|
InvalidInlineTag |
Matches invalid Javadoc tags, and tries to suggest fixes.
|
InvalidJavaTimeConstant |
This checker errors on calls to java.time methods using values that are guaranteed to
throw a DateTimeException .
|
InvalidLink |
Finds some common errors in @link tags.
|
InvalidParam |
Matches incorrect Javadoc @param tags.
|
InvalidPatternSyntax |
|
InvalidTargetingOnScopingAnnotation |
|
InvalidThrows |
Matches errors in Javadoc @throws tags.
|
InvalidThrowsLink |
Matches misuse of link tags within throws tags.
|
InvalidTimeZoneID |
|
InvalidZoneId |
Validates ZoneId.
|
IsInstanceIncompatibleType |
|
IsInstanceOfClass |
|
IsLoggableTagLength |
|
IterableAndIterator |
|
IterablePathParameter |
|
Java7ApiChecker |
Checks for uses of classes, fields, or methods that are not compatible with JDK 7
|
Java8ApiChecker |
Checks for uses of classes, fields, or methods that are not compatible with JDK 8
|
JavaDurationGetSecondsGetNano |
This checker warns about calls to duration.getNano() without a corresponding "nearby"
call to duration.getSeconds() .
|
JavaDurationWithNanos |
Check for calls to duration.withNanos(int) .
|
JavaDurationWithSeconds |
Check for calls to duration.withSeconds(long) .
|
JavaInstantGetSecondsGetNano |
This checker warns about calls to instant.getNano() without a corresponding "nearby" call
to instant.getEpochSecond() .
|
JavaLangClash |
|
JavaLocalDateTimeGetNano |
|
JavaLocalTimeGetNano |
|
JavaPeriodGetDays |
This checker warns about calls to period.getDays() without a corresponding "nearby" call
to period.getYears(), period.getMonths(), or period.getTotalMonths() .
|
JavaTimeDefaultTimeZone |
Check for calls to java.time APIs that silently use the default system time-zone.
|
JavaUtilDateChecker |
|
JavaxInjectOnAbstractMethod |
|
JavaxInjectOnFinalField |
|
JdkObsolete |
|
JodaConstructors |
Check for calls to bad JodaTime constructors.
|
JodaDateTimeConstants |
Checks for usages of dangerous DateTimeConstants constants.
|
JodaDurationWithMillis |
Check for calls to duration.withMillis(long) .
|
JodaInstantWithMillis |
Check for calls to instant.withMillis(long) .
|
JodaNewPeriod |
Match possibly incorrect use of Period to obtain a number of (e.g.) days between two dates.
|
JodaPlusMinusLong |
Check for calls to JodaTime's type.plus(long) and type.minus(long) where
<type> = {Duration,Instant,DateTime,DateMidnight} .
|
JodaTimeConverterManager |
Ban usage of Joda's ConverterManager .
|
JodaToSelf |
Check for calls to Joda-Time's foo.toFoo() and new Foo(foo) .
|
JodaWithDurationAddedLong |
Check for calls to JodaTime's type.withDurationAdded(long, int) where <type> =
{Duration,Instant,DateTime} .
|
JUnit3FloatingPointComparisonWithoutDelta |
Detects floating-point assertEquals() calls that will not work in JUnit 4.
|
JUnit3TestNotRun |
A bugpattern; see the associated summary.
|
JUnit4ClassAnnotationNonStatic |
@BeforeClass or @AfterClass should be applied to static methods.
|
JUnit4ClassUsedInJUnit3 |
|
JUnit4SetUpNotRun |
Checks for the existence of a JUnit3 style setUp() method in a JUnit4 test class or methods
annotated with a non-JUnit4 @Before annotation.
|
JUnit4TearDownNotRun |
Checks for the existence of a JUnit3 style tearDown() method in a JUnit4 test class or methods
annotated with a non-JUnit4 @After annotation.
|
JUnit4TestNotRun |
|
JUnit4TestsNotRunWithinEnclosed |
Finds tests that won't run due to the enclosing runner.
|
JUnitAmbiguousTestClass |
|
JUnitAssertSameCheck |
Points out if an object is tested for reference equality to itself using JUnit library.
|
JUnitParameterMethodNotFound |
Checks if the methods specified in junitparams.Parameters annotation to provide
parameters exists.
|
LambdaFunctionalInterface |
|
LiteByteStringUtf8 |
|
LiteEnumValueOf |
Points out if #valueOf() is called on a Protocol Buffer Enum.
|
LiteProtoToString |
Flags calls to toString on lite protos.
|
LocalDateTemporalAmount |
Bans calls to LocalDate.plus(TemporalAmount) and LocalDate.minus(TemporalAmount)
where the TemporalAmount is a non-zero Duration .
|
LocalVarBinding |
Binding for a local variable in a template.
|
LockMethodChecker |
|
LockNotBeforeTry |
Suggests that calls to Lock.lock must be immediately followed by a try-finally
that calls Lock.unlock .
|
LockOnBoxedPrimitive |
Detects locks on boxed primitives.
|
LogicalAssignment |
|
LongDoubleConversion |
|
LongFloatConversion |
|
LongLiteralLowerCaseSuffix |
Matcher for a long literal with a lower-case ell for a suffix (e.g.
|
LoopConditionChecker |
|
LoopOverCharArray |
|
LossyPrimitiveCompare |
Checker to prevent usages of comparison methods where both the operands undergo lossy widening.
|
MalformedInlineTag |
Finds malformed inline tags where @{tag is used instead of {@tag.
|
Matches |
Specify an error-prone Matcher to further restrict what expressions are matched by the
annotated parameter.
|
MathAbsoluteRandom |
|
MathRoundIntLong |
|
MayOptionallyUse |
Indicates that a parameter to a placeholder method is not required to be used in the
placeholder's implementation.
|
MemberName |
Flags a few ways in which member names may violate the style guide.
|
MemoizeConstantVisitorStateLookups |
|
MethodCanBeStatic |
|
MislabeledAndroidString |
|
MisplacedScopeAnnotations |
Bug checker for when a scope annotation is used at injection site, which does not have any effect
on the injected values.
|
MissingBraces |
|
MissingCasesInEnumSwitch |
|
MissingDefault |
|
MissingFail |
|
MissingImplementsComparable |
|
MissingOverride |
|
MissingSummary |
Matches Javadocs which are missing a required summary line.
|
MissingSuperCall |
|
MissingTestCall |
Matches test helpers which require a terminating method to be called.
|
MisusedDateFormat |
Base class for checks which find common errors in date format patterns.
|
MisusedDayOfYear |
Ban use of D (day-of-year) in a date format pattern that also contains M (month-of-year).
|
MisusedWeekYear |
Ban use of YYYY in a SimpleDateFormat pattern, unless it is being used for a week date.
|
MixedArrayDimensions |
|
MixedDescriptors |
Checks for calls to Descriptor#findFieldByNumber with field numbers from a different
proto.
|
MixedMutabilityReturnType |
Flags methods which return mutable collections from some code paths, but immutable ones from
others.
|
MockitoUsage |
|
ModifiedButNotUsed |
Matches creation of new collections/proto builders which are modified but never used.
|
ModifyCollectionInEnhancedForLoop |
|
ModifyingCollectionWithItself |
|
ModifySourceCollectionInStream |
Identify the backing collection source of a stream and reports if the source is mutated during
the stream operations.
|
MoreThanOneInjectableConstructor |
Matches classes that have two or more constructors annotated with @Inject.
|
MoreThanOneQualifier |
|
MoreThanOneScopeAnnotationOnClass |
This checker matches if a class has more than one annotation that is a scope annotation(that is,
the annotation is either annotated with Guice's @ScopeAnnotation or Javax's
@Scope ).
|
MultipleParallelOrSequentialCalls |
|
MultipleTopLevelClasses |
|
MultipleUnaryOperatorsInMethodCall |
|
MultiVariableDeclaration |
|
MustBeClosedChecker |
Checks if a constructor or method annotated with MustBeClosed is called within the
resource variable initializer of a try-with-resources statement.
|
MutablePublicArray |
Check for public static final declaration of Arrays.
|
NamedParameterComment |
Helper methods for checking if a commented argument matches a formal parameter and for generating
comments in the right format.
|
NarrowCalculation |
A BugPattern; see the summary.
|
NarrowingCompoundAssignment |
|
NCopiesOfChar |
|
NearbyCallers |
Utility class to find calls "nearby" other calls.
|
NegativeCharLiteral |
|
NestedInstanceOfConditions |
|
NoAllocationChecker |
Checks methods annotated with @NoAllocation to ensure they really do not allocate.
|
NoAutoboxing |
Indicates that a Refaster rule should not allow autoboxing when it is typechecking a match.
|
NonAtomicVolatileUpdate |
Detects non-atomic updates to volatile variables.
|
NonCanonicalStaticImport |
Types shouldn't be statically by their non-canonical name.
|
NonCanonicalStaticMemberImport |
Members shouldn't be statically imported by their non-canonical name.
|
NonCanonicalType |
Flags types being referred to by their non-canonical name.
|
NonFinalCompileTimeConstant |
Enforce that @CompileTimeConstant parameters are final or effectively final.
|
NonOverridingEquals |
Bug checker for equals methods that don't actually override equals.
|
NonRuntimeAnnotation |
|
NotMatches |
Specify an error-prone Matcher to further restrict what expressions are matched by the
annotated parameter.
|
NullableConstructor |
|
NullablePrimitive |
|
NullablePrimitiveArray |
|
NullableVoid |
|
NullOptional |
Flags passing literal null to Optional -accepting APIs.
|
NullTernary |
|
ObjectEqualsForPrimitives |
Check for usage of Objects.equal on primitive types.
|
ObjectsHashCodePrimitive |
|
ObjectToString |
Warns against calling toString() on Objects which don't have toString() method overridden and
won't produce meaningful output.
|
OfKind |
Annotation to specify what tree kinds are allowed or disallowed to match a given expression.
|
OperatorPrecedence |
|
OptionalEquality |
|
OptionalMapToOptional |
Matches Optional#map mapping to another Optional .
|
OptionalMapUnusedValue |
Replaces Optional.map with Optional.ifPresent if the value is unused.
|
OptionalNotPresent |
|
OptionalOfRedundantMethod |
Checks if Optional#of is chained with a redundant method.
|
OrphanedFormatString |
|
OutlineNone |
Check for the a11y antipattern of setting CSS outline attributes to none or 0.
|
OverlappingQualifierAndScopeAnnotation |
|
Overrides |
Matches the behaviour of javac's overrides Xlint warning.
|
OverridesGuiceInjectableMethod |
This checker matches methods that 1) are not themselves annotated with @Inject (neither
javax.inject.Inject nor com.google.inject.Inject) 2) descend from a method that is annotated
with @com.google.inject.Inject
|
OverridesJavaxInjectableMethod |
This checker matches methods that 1) are not themselves annotated with @Inject 2) descend from a
method that is annotated with @javax.inject.Inject 3) do not descent from a method that is
annotated with @com.google.inject.Inject
|
OverrideThrowableToString |
Warns against overriding toString() in a Throwable class and suggests getMessage()
|
PackageInfo |
|
PackageLocation |
|
ParameterComment |
|
ParameterMissingNullable |
|
ParameterName |
|
ParametersButNotParameterized |
Flags uses of parameters in non-parameterized tests.
|
ParcelableCreator |
BugPattern to detect classes which implement android.os.Parcelable but don't have public static
CREATOR.
|
PeriodFrom |
Bans calls to Period.from(temporalAmount) where temporalAmount is a Duration .
|
PeriodGetTemporalUnit |
Bans calls to Period.get(temporalUnit) where temporalUnit is not YEARS ,
MONTHS , or DAYS .
|
PeriodTimeMath |
Bans calls to Period#plus/minus(TemporalAmount) where the argument is a Duration.
|
Placeholder |
Annotation to indicate a placeholder method.
|
PreconditionsCheckNotNullRepeated |
Checks that Precondition.checkNotNull is not invoked with same arg twice.
|
PreconditionsInvalidPlaceholder |
|
PreferJavaTimeOverload |
This check suggests the use of java.time -based APIs, when available.
|
PreferredInterfaceType |
Tightens types which refer to an Iterable, Map, Multimap, etc.
|
PrimitiveArrayPassedToVarargsMethod |
|
PrimitiveAtomicReference |
Discourages inadvertently using reference equality on boxed primitives in AtomicReference.
|
PrivateConstructorForNoninstantiableModule |
|
PrivateConstructorForUtilityClass |
|
PrivateSecurityContractProtoAccess |
Check for disallowed access to private_do_not_access_or_else proto fields.
|
ProtectedMembersInFinalClass |
Flags protected members in final classes.
|
ProtoBuilderReturnValueIgnored |
Highlights cases where a proto's build method has its return value ignored.
|
ProtocolBufferOrdinal |
Points out if #ordinal() is called on a Protocol Buffer Enum.
|
ProtoDurationGetSecondsGetNano |
This checker warns about accessing the underlying nanosecond-adjustment field of a duration
without a "nearby" access of the underlying seconds field.
|
ProtoFieldNullComparison |
Matches comparison of proto fields to null .
|
ProtoRedundantSet |
Checks that protocol buffers built with chained builders don't set the same field twice.
|
ProtosAsKeyOfSetOrMap |
Check for usage of Set<Proto> or Map<Proto, E> .
|
ProtoStringFieldReferenceEquality |
|
ProtoTimestampGetSecondsGetNano |
This checker warns about accessing the underlying nanosecond-adjustment field of a protobuf
timestamp without a "nearby" access of the underlying seconds field.
|
ProtoTruthMixedDescriptors |
Checks that ProtoTruth 's ignoringFields is passed field numbers from the correct
proto.
|
ProvidesMethodOutsideOfModule |
|
ProvidesNull |
Bug checker for null-returning methods annotated with @Provides but not
@Nullable .
|
PublicApiNamedStreamShouldReturnStream |
Checks if public APIs named "stream" returns a type whose name ends with Stream.
|
QualifierOrScopeOnInjectMethod |
|
QualifierWithTypeUse |
|
RandomCast |
|
RandomModInteger |
|
ReachabilityFenceUsage |
|
RectIntersectReturnValueIgnored |
|
RedundantOverride |
Removes overrides which purely pass through to the method in the super class.
|
RedundantThrows |
|
Refaster |
Static utilities to indicate special handling in Refaster templates.
|
RefasterRule<M extends TemplateMatch,T extends Template<M>> |
A representation of an entire Refaster rule, corresponding to a class with @BeforeTemplates
and @AfterTemplates.
|
RefasterRuleBuilderScanner |
Scanner implementation to extract a single Refaster rule from a ClassTree .
|
ReferenceEquality |
|
RefersToDaggerCodegen |
Checks that the only code that refers to Dagger generated code is other Dagger generated code.
|
RemoveUnusedImports |
|
Repeated |
An annotation for repeated Refaster template variables.
|
ReplacementVariableFinder |
Utility methods to find replacement variables with similar names.
|
RequiredAnnotation |
Indicates that an annotation requires the presence of another annotation.
|
RequiredAnnotationProcessor |
Enforces @RequiredAnnotation as an annotation processor.
|
RequiredModifiersChecker |
|
RestrictedApiChecker |
Check for non-allowlisted callers to RestrictedApiChecker.
|
RethrowReflectiveOperationExceptionAsLinkageError |
|
ReturnFromVoid |
Finds common Javadoc errors, and tries to suggest useful fixes.
|
ReturnMissingNullable |
|
ReturnsNullCollection |
Flags methods with collection return types which return null in some cases but don't
annotate the method as @Nullable.
|
ReturnValueIgnored |
A checker which produces an error when a return value is accidentally discarded.
|
RobolectricShadowDirectlyOn |
|
RxReturnValueIgnored |
|
SameNameButDifferent |
Looks for types being shadowed by other types in a way that may be confusing.
|
ScopeAnnotationOnInterfaceOrAbstractClass |
|
ScopeOnModule |
Migrate users who use JSR 330 scopes on Dagger modules.
|
ScopeOrQualifierAnnotationRetention |
|
SelfAssignment |
TODO(eaftan): Consider cases where the parent is not a statement or there is no parent?
|
SelfComparison |
Points out if an object is compared to itself.
|
SelfEquals |
|
ShortCircuitBoolean |
|
ShortCircuitBoolean.TreeScannerBinary |
Replaces the operators when visiting the binary nodes
|
ShouldHaveEvenArgs |
Checks that variable argument methods have even number of arguments.
|
SizeGreaterThanOrEqualsZero |
Finds instances where one uses Collection#size() >= 0 or T[].length > 0 .
|
StaticAssignmentInConstructor |
Checks for static fields being assigned within constructors.
|
StaticAssignmentOfThrowable |
Checks for static fields being assigned with Throwable .
|
StaticGuardedByInstance |
|
StaticImports |
|
StaticImports.StaticImportInfo |
Information about a static import.
|
StaticMockMember |
|
StaticOrDefaultInterfaceMethod |
|
StaticQualifiedUsingExpression |
|
StreamResourceLeak |
|
StreamToIterable |
Discourage stream::iterator to create Iterable s.
|
StreamToString |
|
StrictFormatStringValidation |
Format string validation utility that fails on more cases than FormatStringValidation to
enforce strict format string checking.
|
StringBuilderInitWithChar |
|
StringName |
A simple wrapper to view a String as a Name .
|
StringSplitter |
|
StronglyType |
Helper for strongly typing fields.
|
StronglyType.Builder |
|
StronglyTypeByteString |
Flags fields which would be better expressed as ByteStrings rather than primitive byte arrays.
|
StronglyTypeTime |
Flags fields which would be better expressed as time types rather than primitive integers.
|
SubstringOfZero |
Check for calls to String's foo.substring(0) .
|
Suggester |
Checker that recommends using @InlineMe on single-statement deprecated APIs.
|
SuppressWarningsDeprecated |
Find uses of SuppressWarnings with "deprecated".
|
SuppressWarningsWithoutExplanation |
Finds occurrences of @SuppressWarnings where there is definitely no explanation for why
it is safe.
|
SwigMemoryLeak |
|
SwitchDefault |
|
SymbolToString |
Flags com.sun.tools.javac.code.Symbol#toString usage in BugChecker s.
|
SynchronizeOnNonFinalField |
|
SystemExitOutsideMain |
Check for calls to System.exit() outside of a main method.
|
SystemOut |
|
Template<M extends TemplateMatch> |
Abstract superclass for templates that can be used to search and replace in a Java syntax tree.
|
TemplateMatch |
Abstract type representing a match against a Template .
|
TemporalAccessorGetChronoField |
Bans calls to TemporalAccessor.get(ChronoField) where the implementation is guaranteed to
throw an UnsupportedTemporalTypeException .
|
TestExceptionChecker |
|
TestParametersNotInitialized |
Flags uses of parameters in non-parameterized tests.
|
TheoryButNoTheories |
Flags uses of @Theory (and others) in non-Theories -run tests.
|
ThreadJoinLoop |
|
ThreadLocalUsage |
|
ThreadPriorityCheck |
Bug checker to detect usage of Thread.stop() , Thread.yield() , and changing thread
priorities.
|
ThreadSafety |
A class which gives information about the annotation of types; if a type isn't annotated, ThreadSafety.Violation gives information as to why it is not.
|
ThreadSafety.Builder |
|
ThreadSafety.KnownTypes |
Information about known types and whether they're known to be safe or unsafe.
|
ThreadSafety.Purpose |
The ThreadSafety utility class can be used by either the bug checker that enforces
immutability or by the bug checker that enforces thread-safety.
|
ThreadSafety.Violation |
A human-friendly explanation of a thread safety violations.
|
ThreeLetterTimeZoneID |
|
ThrowIfUncheckedKnownChecked |
Catches no-op calls to Throwables.throwIfUnchecked .
|
ThrowNull |
|
ThrowSpecificExceptions |
Bugpattern to discourage throwing base exception classes.
|
ThrowsUncheckedException |
Suggests to remove the unchecked throws clause.
|
TimeUnitConversionChecker |
Check for problematic or suspicious TimeUnit conversion calls.
|
TimeUnitMismatch |
Checker that detects likely time-unit mismatches by looking at identifier names.
|
TooManyParameters |
|
ToStringReturnsNull |
ToString should not return null.
|
TransientMisuse |
Warns against use of both static and transient modifiers on field declarations.
|
TreeToString |
Flags com.sun.source.tree.Tree#toString usage in BugChecker s.
|
TruthAssertExpected |
Detects usages of Truth assertions with the expected and actual values reversed.
|
TruthConstantAsserts |
Points out if Truth Library assert is called on a constant.
|
TruthGetOrDefault |
Flags ambiguous usages of Map#getOrDefault within Truth#assertThat .
|
TruthIncompatibleType |
|
TruthSelfEquals |
Points out if an object is tested for equality/inequality to itself using Truth Libraries.
|
TryFailRefactoring |
|
TryFailThrowable |
A bug checker for the following code pattern:
|
TryWithResourcesVariable |
|
TypeCompatibilityUtils |
Logical utility methods to answer the question: Are these two types "compatible" with each other,
in the context of an equality check.
|
TypeCompatibilityUtils.TypeCompatibilityReport |
|
TypeEqualsChecker |
Flags com.sun.tools.javac.code.Type#equals usage.
|
TypeNameShadowing |
Warns when a type parameter shadows another type name in scope.
|
TypeParameterNaming |
Enforces type parameters match the google style guide.
|
TypeParameterNaming.TypeParameterNamingClassification |
An enum that classifies a String name into different types, based on the Google Java Style
Guide's rules for Type Parameters.
|
TypeParameterQualifier |
|
TypeParameterShadowing |
|
TypeParameterUnusedInFormals |
|
TypesWithUndefinedEquality |
Enumerates types which have poorly-defined behaviour for equals.
|
TypeToString |
Flags com.sun.tools.javac.code.Type#toString usage in BugChecker s.
|
UAnyOf |
UExpression allowing a match against any of a list of expressions.
|
UClassType |
A representation of a type with optional generic parameters.
|
UExpression |
UTree version of ExpressionTree .
|
UForAll |
UType version of Type.ForAll .
|
UFreeIdent |
Free identifier that can be bound to any expression of the appropriate type.
|
UIntersectionClassType |
UType representation of an IntersectionClassType .
|
ULiteral |
UTree version of LiteralTree .
|
UMemberSelect |
UTree version of MemberSelectTree .
|
UMethodInvocation |
UTree version of MethodInvocationTree .
|
UMethodType |
A UType representation of a Type.MethodType .
|
UndefinedEquals |
Flags types which do not have well-defined equals behavior.
|
UnescapedEntity |
Finds unescaped entities in Javadocs.
|
UngroupedOverloads |
|
UnicodeDirectionalityCharacters |
Bans, without the possibility of suppression, the use of direction-changing Unicode escapes.
|
UnicodeEscape |
Replaces printable ASCII unicode escapes with the literal version.
|
UnicodeInCode |
Bans using non-ASCII Unicode characters outside string literals and comments.
|
Unifiable<T> |
A serializable representation of a template that can be matched against a target of type
T .
|
Unifier |
A mutable representation of an attempt to match a template source tree against a target source
tree.
|
UnlockMethodChecker |
|
UnnecessarilyFullyQualified |
Flags uses of fully qualified names which are not ambiguous if imported.
|
UnnecessarilyVisible |
Suggests restricting the visibility of methods which should only be called by a framework.
|
UnnecessaryAnonymousClass |
|
UnnecessaryAssignment |
Discourage manual initialization or assignment to fields annotated with framework annotations.
|
UnnecessaryBoxedAssignment |
Finds and fixes unnecessarily boxed return expressions.
|
UnnecessaryBoxedVariable |
Finds and fixes unnecessarily boxed variables.
|
UnnecessaryCheckNotNull |
Checks for unnecessarily performing null checks on expressions which can't be null.
|
UnnecessaryDefaultInEnumSwitch |
|
UnnecessaryFinal |
Removes final from non-field variables.
|
UnnecessaryLambda |
|
UnnecessaryLongToIntConversion |
|
UnnecessaryMethodInvocationMatcher |
Matchers.methodInvocation(Matcher) is not exactly deprecated, but it is legacy, and in
particular is not needed when the argument is a MethodMatcher, since MethodMatcher already does
the unwrapping that methodInvocation does.
|
UnnecessaryMethodReference |
Matches unnecessary uses of method references.
|
UnnecessaryOptionalGet |
A refactoring to replace Optional.get() with lambda arg in expressions passed as arg to member
functions of Optionals.
|
UnnecessaryParentheses |
|
UnnecessarySetDefault |
|
UnnecessaryStaticImport |
|
UnnecessaryTypeArgument |
|
UnrecognisedJavadocTag |
Flags tags which haven't been recognised by the Javadoc parser.
|
UnsafeFinalization |
|
UnsafeLocaleUsage |
Flags unsafe usages of the Locale constructor and class methods.
|
UnsafeReflectiveConstructionCast |
Checks unsafe instance creation via reflection.
|
UnsynchronizedOverridesSynchronized |
|
UnusedAnonymousClass |
|
UnusedCollectionModifiedInPlace |
|
UnusedException |
Bugpattern for catch blocks which catch an exception but throw another one without wrapping the
original.
|
UnusedMethod |
Bugpattern to detect unused declarations.
|
UnusedNestedClass |
Bugpattern to detect unused nested classes.
|
UnusedVariable |
Bugpattern to detect unused declarations.
|
UPlaceholderExpression |
UTree representation of an invocation of a placeholder method.
|
UPlaceholderExpression.PlaceholderParamIdent |
|
UReturn |
UTree representation of a ReturnTree .
|
URLEqualsHashCode |
Points out on creation of Set and HashMap of type java.net.URL.
|
UrlInSee |
Discourages using URLs in @see tags.
|
UseBinds |
|
UseCorrectAssertInTests |
|
UseEnumSwitch |
|
UseImportPolicy |
Annotation to indicate which import policy to use.
|
UsingJsr305CheckReturnValue |
Checker that recommends using ErrorProne's version of @CheckReturnValue over the version
in JSR305 (which is defunct).
|
UStatement |
UTree representation of a StatementTree .
|
UStatement.UnifierWithUnconsumedStatements |
Tuple of a Unifier and a list of statements that are still waiting to be matched.
|
UStaticIdent |
Identifier representing a static member (field, method, etc.) on a class.
|
UTemplater |
Converts a type-checked syntax tree to a portable UTree template.
|
UTree<T extends com.sun.tools.javac.tree.JCTree> |
A serializable representation of a template syntax tree which can be unified with a target AST
and inlined based on a set of substitutions.
|
UType |
A serializable representation of a type template, used for enforcing type constraints on target
ASTs.
|
UTypeVar |
UType version of Type.TypeVar .
|
UTypeVar.Key |
Bindings key linked to a UTypeVar .
|
UTypeVar.TypeWithExpression |
Tuple of an expression with an associated type.
|
UVariableDecl |
A UTree representation of a local variable declaration.
|
Validator |
Checker that ensures the @InlineMe annotation is used correctly.
|
VarChecker |
|
VariableNameSameAsType |
Check for variables and types with the same name
|
Varifier |
Converts some local variables to use var .
|
VarTypeName |
|
VoidMissingNullable |
|
WaitNotInLoop |
|
WakelockReleasedDangerously |
|
WellKnownMutability |
A collection of types with known mutability.
|
WildcardImport |
|
WithSignatureDiscouraged |
|
WrongOneof |
Matches always-default expressions in oneof switches.
|
XorPower |
|
ZoneIdOfZ |
|