Class BugChecker

  • All Implemented Interfaces:
    Suppressible, Serializable

    public abstract class BugChecker
    extends Object
    implements Suppressible, Serializable
    A base class for implementing bug checkers. The BugChecker supplies a Scanner implementation for this checker, making it easy to use a single checker. Subclasses should also implement one or more of the *Matcher interfaces in this class to declare which tree node types to match against.
    Author:
    Colin Decker, Eddie Aftandilian ([email protected])
    See Also:
    Serialized Form
    • Constructor Detail

      • BugChecker

        public BugChecker()
    • Method Detail

      • describeMatch

        @CheckReturnValue
        public Description describeMatch​(com.sun.source.tree.Tree node,
                                         Fix fix)
        Helper to create a Description for the common case where there is a fix.
      • describeMatch

        @CheckReturnValue
        public Description describeMatch​(com.sun.tools.javac.tree.JCTree node,
                                         Fix fix)
        Helper to create a Description for the common case where there is a fix.
      • describeMatch

        @CheckReturnValue
        public Description describeMatch​(com.sun.tools.javac.util.JCDiagnostic.DiagnosticPosition position,
                                         Fix fix)
        Helper to create a Description for the common case where there is a fix.
      • describeMatch

        @CheckReturnValue
        public Description describeMatch​(com.sun.source.tree.Tree node)
        Helper to create a Description for the common case where there is no fix.
      • describeMatch

        @CheckReturnValue
        public Description describeMatch​(com.sun.tools.javac.tree.JCTree node)
        Helper to create a Description for the common case where there is no fix.
      • describeMatch

        @CheckReturnValue
        public Description describeMatch​(com.sun.tools.javac.util.JCDiagnostic.DiagnosticPosition position)
        Helper to create a Description for the common case where there is no fix.
      • buildDescription

        @CheckReturnValue
        public Description.Builder buildDescription​(com.sun.source.tree.Tree node)
        Returns a Description builder, which allows you to customize the diagnostic with a custom message or multiple fixes.
      • buildDescription

        @CheckReturnValue
        public Description.Builder buildDescription​(com.sun.tools.javac.util.JCDiagnostic.DiagnosticPosition position)
        Returns a Description builder, which allows you to customize the diagnostic with a custom message or multiple fixes.
      • buildDescription

        @CheckReturnValue
        public Description.Builder buildDescription​(com.sun.tools.javac.tree.JCTree tree)
        Returns a Description builder, which allows you to customize the diagnostic with a custom message or multiple fixes.
      • allNames

        public Set<String> allNames()
        Description copied from interface: Suppressible
        Returns all of the name strings that this checker should respect as part of a @SuppressWarnings annotation.
        Specified by:
        allNames in interface Suppressible
      • message

        public String message()
      • linkUrl

        public String linkUrl()
      • supportsSuppressWarnings

        public boolean supportsSuppressWarnings()
        Description copied from interface: Suppressible
        Returns true if this checker can be suppressed using @SuppressWarnings.
        Specified by:
        supportsSuppressWarnings in interface Suppressible
      • disableable

        public boolean disableable()
      • isSuppressed

        public boolean isSuppressed​(com.sun.source.tree.Tree tree,
                                    VisitorState state)
        Returns true if the given tree is annotated with a @SuppressWarnings that disables this bug checker.
      • isSuppressed

        public boolean isSuppressed​(com.sun.tools.javac.code.Symbol sym,
                                    VisitorState state)
        Returns true if the given symbol is annotated with a @SuppressWarnings or other annotation that disables this bug checker.
      • suppressedRegions

        public com.google.common.collect.ImmutableRangeSet<Integer> suppressedRegions​(VisitorState state)
        Computes a RangeSet of code regions which are suppressed by this bug checker.
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object