Class SuppressWithNearbyCommentFilter

java.lang.Object
com.puppycrawl.tools.checkstyle.AbstractAutomaticBean
com.puppycrawl.tools.checkstyle.filters.SuppressWithNearbyCommentFilter
All Implemented Interfaces:
Configurable, Contextualizable, TreeWalkerFilter

Filter SuppressWithNearbyCommentFilter uses nearby comments to suppress audit events.

Rationale: Same as SuppressionCommentFilter. Whereas the SuppressionCommentFilter uses matched pairs of filters to turn on/off comment matching, SuppressWithNearbyCommentFilter uses single comments. This requires fewer lines to mark a region, and may be aesthetically preferable in some contexts.

Attention: This filter may only be specified within the TreeWalker module (<module name="TreeWalker"/>) and only applies to checks which are also defined within this module. To filter non-TreeWalker checks like RegexpSingleline, a SuppressWithPlainTextCommentFilter or similar filter must be used.

SuppressWithNearbyCommentFilter can suppress Checks that have Treewalker as parent module.

  • Property checkC - Control whether to check C style comments (/* ... */). Type is boolean. Default value is true.
  • Property checkCPP - Control whether to check C++ style comments (//). Type is boolean. Default value is true.
  • Property checkFormat - Specify check pattern to suppress. Type is java.util.regex.Pattern. Default value is ".*".
  • Property commentFormat - Specify comment pattern to trigger filter to begin suppression. Type is java.util.regex.Pattern. Default value is "SUPPRESS CHECKSTYLE (\w+)".
  • Property idFormat - Specify check ID pattern to suppress. Type is java.util.regex.Pattern. Default value is null.
  • Property influenceFormat - Specify negative/zero/positive value that defines the number of lines preceding/at/following the suppression comment. Type is java.lang.String. Default value is "0".
  • Property messageFormat - Define message pattern to suppress. Type is java.util.regex.Pattern. Default value is null.

Parent is com.puppycrawl.tools.checkstyle.TreeWalker

Since:
5.0
  • Field Details

  • Constructor Details

  • Method Details

    • setCommentFormat

      public final void setCommentFormat(Pattern pattern)
      Setter to specify comment pattern to trigger filter to begin suppression.
      Parameters:
      pattern - a pattern.
      Since:
      5.0
    • getFileContents

      Returns FileContents for this filter.
      Returns:
      the FileContents for this filter.
    • setFileContents

      private void setFileContents(FileContents fileContents)
      Set the FileContents for this filter.
      Parameters:
      fileContents - the FileContents for this filter.
    • setCheckFormat

      public final void setCheckFormat(String format)
      Setter to specify check pattern to suppress.
      Parameters:
      format - a String value
      Since:
      5.0
    • setMessageFormat

      public void setMessageFormat(String format)
      Setter to define message pattern to suppress.
      Parameters:
      format - a String value
      Since:
      5.0
    • setIdFormat

      public void setIdFormat(String format)
      Setter to specify check ID pattern to suppress.
      Parameters:
      format - a String value
      Since:
      8.24
    • setInfluenceFormat

      public final void setInfluenceFormat(String format)
      Setter to specify negative/zero/positive value that defines the number of lines preceding/at/following the suppression comment.
      Parameters:
      format - a String value
      Since:
      5.0
    • setCheckCPP

      public void setCheckCPP(boolean checkCpp)
      Setter to control whether to check C++ style comments (//).
      Parameters:
      checkCpp - true if C++ comments are checked.
      Since:
      5.0
    • setCheckC

      public void setCheckC(boolean checkC)
      Setter to control whether to check C style comments (/* ... */).
      Parameters:
      checkC - true if C comments are checked.
      Since:
      5.0
    • finishLocalSetup

      protected void finishLocalSetup()
      Description copied from class: AbstractAutomaticBean
      Provides a hook to finish the part of this component's setup that was not handled by the bean introspection.

      The default implementation does nothing.

      Specified by:
      finishLocalSetup in class AbstractAutomaticBean
    • accept

      public boolean accept(TreeWalkerAuditEvent event)
      Description copied from interface: TreeWalkerFilter
      Determines whether or not a filtered TreeWalkerAuditEvent is accepted.
      Specified by:
      accept in interface TreeWalkerFilter
      Parameters:
      event - the TreeWalkerAuditEvent to filter.
      Returns:
      true if the event is accepted.
    • matchesTag

      private boolean matchesTag(TreeWalkerAuditEvent event)
      Whether current event matches any tag from tags.
      Parameters:
      event - TreeWalkerAuditEvent to test match on tags.
      Returns:
      true if event matches any tag from tags, false otherwise.
    • tagSuppressions

      private void tagSuppressions()
      Collects all the suppression tags for all comments into a list and sorts the list.
    • tagSuppressions

      private void tagSuppressions(Collection<TextBlock> comments)
      Appends the suppressions in a collection of comments to the full set of suppression tags.
      Parameters:
      comments - the set of comments.
    • tagCommentLine

      private void tagCommentLine(String text, int line)
      Tags a string if it matches the format for turning checkstyle reporting on or the format for turning reporting off.
      Parameters:
      text - the string to tag.
      line - the line number of text.
    • addTag

      private void addTag(String text, int line)
      Adds a comment suppression Tag to the list of all tags.
      Parameters:
      text - the text of the tag.
      line - the line number of the tag.