MCPcopy
hub / github.com/google/error-prone

github.com/google/error-prone @v2.50.0 sqlite

repository ↗ · DeepWiki ↗ · release v2.50.0 ↗
17,868 symbols 80,910 edges 2,055 files 3,407 documented · 19%
README

Error Prone

Error Prone is a static analysis tool for Java that catches common programming mistakes at compile-time.

public class ShortSet {
  public static void main (String[] args) {
    Set<Short> s = new HashSet<>();
    for (short i = 0; i < 100; i++) {
      s.add(i);
      s.remove(i - 1);
    }
    System.out.println(s.size());
  }
}
error: [CollectionIncompatibleType] Argument 'i - 1' should not be passed to this method;
its type int is not compatible with its collection's type argument Short
      s.remove(i - 1);
              ^
    (see https://errorprone.info/bugpattern/CollectionIncompatibleType)
1 error

Getting Started

Our documentation is at errorprone.info.

Error Prone works with Bazel, Maven, Ant, and Gradle. See our installation instructions for details.

Developing Error Prone

Developing and building Error Prone is documented on the wiki.

Links

Extension points exported contracts — how you extend this code

ConstantExpression (Interface)
Represents a constant expression. [63 implementers]
core/src/main/java/com/google/errorprone/bugpatterns/threadsafety/ConstantExpressions.java
DescriptionListener (Interface)
Strategies for reporting results. @author alexeagle@google.com (Alex Eagle) [6 implementers]
check_api/src/main/java/com/google/errorprone/DescriptionListener.java
FixChooser (Interface)
For checks that provide multiple possible fixes, chooses the one that will be applied for the test. [1 implementers]
test_helpers/src/main/java/com/google/errorprone/BugCheckerRefactoringTestHelper.java
UStatement (Interface)
UTree representation of a StatementTree. @author lowasser@google.com (Louis Wasserman) [8 implementers]
core/src/main/java/com/google/errorprone/refaster/UStatement.java
CodeTransformer (Interface)
Interface for a transformation over Java source. @author lowasser@google.com (Louis Wasserman) [6 implementers]
check_api/src/main/java/com/google/errorprone/CodeTransformer.java
Unifiable (Interface)
A serializable representation of a template that can be matched against a target of type T. @author Louis Wasse [7 implementers]
core/src/main/java/com/google/errorprone/refaster/Unifiable.java
Supplier (Interface)
Simple supplier pattern, which allows delayed binding to access to runtime elements. @author alexeagle@google.com (Alex [12 …
check_api/src/main/java/com/google/errorprone/suppliers/Supplier.java
Parcelable (Interface)
(no doc) [19 implementers]
core/src/test/java/com/google/errorprone/bugpatterns/android/testdata/stubs/android/os/Parcelable.java

Core symbols most depended-on inside this repo

get
called by 1213
check_api/src/main/java/com/google/errorprone/suppliers/Supplier.java
matches
called by 1155
check_api/src/main/java/com/google/errorprone/matchers/Matcher.java
getSymbol
called by 1058
check_api/src/main/java/com/google/errorprone/util/ASTHelpers.java
isEmpty
called by 792
check_api/src/main/java/com/google/errorprone/fixes/Fix.java
equals
called by 785
core/src/main/java/com/google/errorprone/bugpatterns/RedundantSetterCall.java
named
called by 700
check_api/src/main/java/com/google/errorprone/matchers/field/FieldMatchers.java
toString
called by 697
core/src/main/java/com/google/errorprone/bugpatterns/RedundantSetterCall.java
add
called by 672
core/src/main/java/com/google/errorprone/bugpatterns/threadsafety/ThreadSafetyKnownTypes.java

Shape

Method 15,107
Class 2,518
Interface 145
Enum 98

Languages

Java100%

Modules by API surface

core/src/test/java/com/google/errorprone/bugpatterns/threadsafety/ImmutableCheckerTest.java180 symbols
check_api/src/main/java/com/google/errorprone/bugpatterns/BugChecker.java153 symbols
core/src/test/java/com/google/errorprone/fixes/SuggestedFixesTest.java147 symbols
check_api/src/main/java/com/google/errorprone/matchers/Matchers.java132 symbols
check_api/src/test/java/com/google/errorprone/util/ASTHelpersTest.java123 symbols
check_api/src/main/java/com/google/errorprone/util/ASTHelpers.java123 symbols
core/src/test/java/com/google/errorprone/bugpatterns/nullness/ReturnMissingNullableTest.java114 symbols
core/src/test/java/com/google/errorprone/bugpatterns/StatementSwitchToExpressionSwitchTest.java104 symbols
core/src/test/java/com/google/errorprone/bugpatterns/IfChainToSwitchTest.java102 symbols
check_api/src/main/java/com/google/errorprone/fixes/SuggestedFixes.java102 symbols
check_api/src/main/java/com/google/errorprone/dataflow/nullnesspropagation/AbstractNullnessPropagationTransfer.java92 symbols
core/src/test/java/com/google/errorprone/bugpatterns/UnusedVariableTest.java85 symbols

Dependencies from manifests, versioned

com.beust:jcommander1.82 · 1×
com.github.spullara.mustache.java:compiler0.9.11 · 1×
com.google.auto.service:auto-service-annotations
com.google.auto.value:auto-value-annotations
com.google.errorprone:error_prone_annotation
com.google.errorprone:error_prone_core
com.google.errorprone:error_prone_docgen_processor
com.google.flogger:flogger
com.google.inject.extensions:guice-testlib5.1.0 · 1×
com.google.truth:truth

For agents

$ claude mcp add error-prone \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact