diff options
author | Vladislav Lisetskii <vladlis54@gmail.com> | 2017-04-22 22:19:14 +0300 |
---|---|---|
committer | Roman Ivanov <romani@users.noreply.github.com> | 2017-04-24 07:55:33 -0700 |
commit | d6f3a17328226debcddb53ed25c39501f2781764 (patch) | |
tree | 7cb077da104ead09213ed23f329b58d402dca328 /src | |
parent | 6098d52bc125347961fc37971fd0d9a428f2781a (diff) | |
download | checkstyle-d6f3a17328226debcddb53ed25c39501f2781764.tar.gz |
Issue #3496: Enforce ReturnCount max=1 in imports, regexp, naming, design, sizes packages
Diffstat (limited to 'src')
7 files changed, 43 insertions, 41 deletions
diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/design/MutableExceptionCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/design/MutableExceptionCheck.java index cd39fad7e..70d558c61 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/design/MutableExceptionCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/design/MutableExceptionCheck.java @@ -157,6 +157,7 @@ public final class MutableExceptionCheck extends AbstractCheck { * @return true if extended class name conforms to specified format */ private boolean isExtendedClassNamedAsException(DetailAST ast) { + boolean result = false; final DetailAST extendsClause = ast.findFirstToken(TokenTypes.EXTENDS_CLAUSE); if (extendsClause != null) { DetailAST currentNode = extendsClause; @@ -164,8 +165,8 @@ public final class MutableExceptionCheck extends AbstractCheck { currentNode = currentNode.getLastChild(); } final String extendedClassName = currentNode.getText(); - return extendedClassNameFormat.matcher(extendedClassName).matches(); + result = extendedClassNameFormat.matcher(extendedClassName).matches(); } - return false; + return result; } } diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheck.java index feb3dd540..54a0b7246 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/CustomImportOrderCheck.java @@ -593,12 +593,14 @@ public class CustomImportOrderCheck extends AbstractCheck { * true, if current group contains at least one import. */ private boolean hasAnyImportInCurrentGroup(String currentGroup) { + boolean result = false; for (ImportDetails currentImport : importToGroupList) { if (currentGroup.equals(currentImport.getImportGroup())) { - return true; + result = true; + break; } } - return false; + return result; } /** @@ -723,12 +725,11 @@ public class CustomImportOrderCheck extends AbstractCheck { * @return full path or null. */ private static String getFullImportIdent(DetailAST token) { - if (token == null) { - return ""; - } - else { - return FullIdent.createFullIdent(token.findFirstToken(TokenTypes.DOT)).getText(); + String ident = ""; + if (token != null) { + ident = FullIdent.createFullIdent(token.findFirstToken(TokenTypes.DOT)).getText(); } + return ident; } /** diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/IllegalImportCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/IllegalImportCheck.java index 7e247f441..4c53ccc8a 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/IllegalImportCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/IllegalImportCheck.java @@ -123,11 +123,13 @@ public class IllegalImportCheck * @return if {@code importText} contains an illegal package prefix */ private boolean isIllegalImport(String importText) { + boolean isIllegal = false; for (String element : illegalPkgs) { if (importText.startsWith(element + ".")) { - return true; + isIllegal = true; + break; } } - return false; + return isIllegal; } } diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportControl.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportControl.java index c7dcd9e6e..c49020236 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportControl.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/imports/ImportControl.java @@ -271,19 +271,19 @@ class ImportControl { * @param inPkg the package doing the import. * @return an {@link AccessResult}. */ - private AccessResult localCheckAccess(final String inPkg, - final String forImport) { - for (AbstractImportRule r : rules) { + private AccessResult localCheckAccess(final String inPkg, final String forImport) { + AccessResult localCheckAccessResult = AccessResult.UNKNOWN; + for (AbstractImportRule importRule : rules) { // Check if an import rule is only meant to be applied locally. - if (r.isLocalOnly() && !matchesExactly(inPkg)) { - continue; - } - final AccessResult result = r.verifyImport(forImport); - if (result != AccessResult.UNKNOWN) { - return result; + if (!importRule.isLocalOnly() || matchesExactly(inPkg)) { + final AccessResult result = importRule.verifyImport(forImport); + if (result != AccessResult.UNKNOWN) { + localCheckAccessResult = result; + break; + } } } - return AccessResult.UNKNOWN; + return localCheckAccessResult; } /** diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/naming/LocalVariableNameCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/naming/LocalVariableNameCheck.java index ccb2496b7..4d7da9fe7 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/naming/LocalVariableNameCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/naming/LocalVariableNameCheck.java @@ -113,15 +113,17 @@ public class LocalVariableNameCheck @Override protected final boolean mustCheckName(DetailAST ast) { + final boolean result; if (allowOneCharVarInForLoop && isForLoopVariable(ast)) { - final String variableName = - ast.findFirstToken(TokenTypes.IDENT).getText(); - return !SINGLE_CHAR.matcher(variableName).find(); + final String variableName = ast.findFirstToken(TokenTypes.IDENT).getText(); + result = !SINGLE_CHAR.matcher(variableName).find(); } - final DetailAST modifiersAST = - ast.findFirstToken(TokenTypes.MODIFIERS); - final boolean isFinal = modifiersAST.branchContains(TokenTypes.FINAL); - return !isFinal && ScopeUtils.isLocalVariableDef(ast); + else { + final DetailAST modifiersAST = ast.findFirstToken(TokenTypes.MODIFIERS); + final boolean isFinal = modifiersAST.branchContains(TokenTypes.FINAL); + result = !isFinal && ScopeUtils.isLocalVariableDef(ast); + } + return result; } /** diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/regexp/DetectorOptions.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/regexp/DetectorOptions.java index 94a702c89..2b73218a0 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/regexp/DetectorOptions.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/regexp/DetectorOptions.java @@ -117,15 +117,14 @@ public final class DetectorOptions { * @return the pattern to use when matching. */ public Pattern getPattern() { - if (pattern != null) { - return pattern; - } - int options = compileFlags; + if (pattern == null) { + int options = compileFlags; - if (ignoreCase) { - options |= Pattern.CASE_INSENSITIVE; + if (ignoreCase) { + options |= Pattern.CASE_INSENSITIVE; + } + pattern = Pattern.compile(format, options); } - pattern = Pattern.compile(format, options); return pattern; } diff --git a/src/main/java/com/puppycrawl/tools/checkstyle/checks/sizes/MethodCountCheck.java b/src/main/java/com/puppycrawl/tools/checkstyle/checks/sizes/MethodCountCheck.java index 05339249b..0ff491642 100644 --- a/src/main/java/com/puppycrawl/tools/checkstyle/checks/sizes/MethodCountCheck.java +++ b/src/main/java/com/puppycrawl/tools/checkstyle/checks/sizes/MethodCountCheck.java @@ -252,14 +252,11 @@ public final class MethodCountCheck extends AbstractCheck { * @return the value of a scope counter */ private int value(Scope scope) { - final Integer value = counts.get(scope); - + Integer value = counts.get(scope); if (value == null) { - return 0; - } - else { - return value; + value = 0; } + return value; } /** |