Package org.sonar.java.checks.regex
Class UnusedGroupNamesCheck
java.lang.Object
org.sonar.java.ast.visitors.SubscriptionVisitor
org.sonar.plugins.java.api.IssuableSubscriptionVisitor
org.sonar.java.checks.regex.AbstractRegexCheck
org.sonar.java.checks.regex.AbstractRegexCheckTrackingMatchers
org.sonar.java.checks.regex.UnusedGroupNamesCheck
- All Implemented Interfaces:
RegexCheck,JavaCheck,JavaFileScanner
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.sonar.java.regex.RegexCheck
RegexCheck.RegexIssueLocation -
Field Summary
Fields inherited from class org.sonar.java.checks.regex.AbstractRegexCheck
JAVA_LANG_STRING, LANG3_REGEX_UTILS, METHODS_IMPLYING_DOT_ALL_FLAG, REGEX_METHODS, REGEX_ON_THE_SECOND_ARGUMENT_METHODSFields inherited from class org.sonar.java.ast.visitors.SubscriptionVisitor
context -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidcheckRegex(org.sonarsource.analyzer.commons.regex.RegexParseResult regexForLiterals, ExpressionTree methodInvocationOrAnnotation, List<MethodInvocationTree> trackedMethodsCalled, boolean didEscape) protected MethodMatchersThe methods for which we want to know whether they're invoked on the given regex.Methods inherited from class org.sonar.java.checks.regex.AbstractRegexCheckTrackingMatchers
checkRegex, leaveNode, nodesToVisit, onMethodInvocationFound, visitNodeMethods inherited from class org.sonar.java.checks.regex.AbstractRegexCheck
filterAnnotation, getFinalVariableInitializer, getFlagsTree, getLiterals, getMethodInvocationMatchers, getRegexLiteralExpression, methodOrAnnotationName, onAnnotationFound, regexForLiterals, reportIssue, reportIssue, reportIssueFromCommons, setContextMethods inherited from class org.sonar.plugins.java.api.IssuableSubscriptionVisitor
addIssue, addIssueOnFile, reportIssue, reportIssue, reportIssue, scanTreeMethods inherited from class org.sonar.java.ast.visitors.SubscriptionVisitor
leaveFile, scanFile, visitToken, visitTriviaMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.sonar.plugins.java.api.JavaFileScanner
scanWithoutParsing
-
Constructor Details
-
UnusedGroupNamesCheck
public UnusedGroupNamesCheck()
-
-
Method Details
-
trackedMethodMatchers
Description copied from class:AbstractRegexCheckTrackingMatchersThe methods for which we want to know whether they're invoked on the given regex. These should either be methods of the Pattern or Matcher class or part of REGEX_METHODS.- Specified by:
trackedMethodMatchersin classAbstractRegexCheckTrackingMatchers
-
checkRegex
protected void checkRegex(org.sonarsource.analyzer.commons.regex.RegexParseResult regexForLiterals, ExpressionTree methodInvocationOrAnnotation, List<MethodInvocationTree> trackedMethodsCalled, boolean didEscape) - Specified by:
checkRegexin classAbstractRegexCheckTrackingMatchers- Parameters:
regexForLiterals- The regex to be checkedmethodInvocationOrAnnotation- The method invocation or annotation that the regex string is passed totrackedMethodsCalled- The list of method invocations performed on the Pattern or Matcher object associated with the regex (only taking into account methods returned by trackedMethodMatchers)didEscape- Whether or not the regex escaped the method in which it was created (via return, being assigned to a non-local variable or being passed to a different method). If true, trackedMethodsCalled may not be exhaustive.
-