Class NestedSwitchCheck
- java.lang.Object
-
- com.puppycrawl.tools.checkstyle.api.AutomaticBean
-
- com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
-
- com.puppycrawl.tools.checkstyle.api.AbstractCheck
-
- com.github.sevntu.checkstyle.checks.design.NestedSwitchCheck
-
- All Implemented Interfaces:
com.puppycrawl.tools.checkstyle.api.Configurable,com.puppycrawl.tools.checkstyle.api.Contextualizable
public class NestedSwitchCheck extends com.puppycrawl.tools.checkstyle.api.AbstractCheckThis check ensures that there is no switch block inside other switch block. In such case nested block should be exposed into new method.
Assuming following block:switch (color) { case GREEN: switch (type) { case MEDIUM: } case BLUE: }Nested switch block that checks
typeparameter should be converted into separate method.
To enable this check use following configuration:<module name="NestedSwitchCheck"/>
- Since:
- 1.13.0
- Author:
- Damian Szczepanik (damianszczepanik@github)
-
-
Constructor Summary
Constructors Constructor Description NestedSwitchCheck()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidbeginTree(com.puppycrawl.tools.checkstyle.api.DetailAST rootAST)int[]getAcceptableTokens()int[]getDefaultTokens()int[]getRequiredTokens()voidleaveToken(com.puppycrawl.tools.checkstyle.api.DetailAST aAST)voidsetMax(int max)Setter for maximum allowed nesting depth.voidvisitToken(com.puppycrawl.tools.checkstyle.api.DetailAST aAST)-
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractCheck
clearViolations, destroy, finishTree, getFileContents, getFilePath, getLine, getLineCodePoints, getLines, getTabWidth, getTokenNames, getViolations, init, isCommentNodesRequired, log, log, log, setFileContents, setTabWidth, setTokens
-
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
finishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverity
-
-
-
-
Field Detail
-
MSG_KEY
public static final String MSG_KEY
A key is pointing to the warning message text in "messages.properties" file.- See Also:
- Constant Field Values
-
-
Method Detail
-
setMax
public final void setMax(int max)
Setter for maximum allowed nesting depth.- Parameters:
max- maximum allowed nesting depth.
-
getDefaultTokens
public int[] getDefaultTokens()
- Specified by:
getDefaultTokensin classcom.puppycrawl.tools.checkstyle.api.AbstractCheck
-
getAcceptableTokens
public int[] getAcceptableTokens()
- Specified by:
getAcceptableTokensin classcom.puppycrawl.tools.checkstyle.api.AbstractCheck
-
getRequiredTokens
public final int[] getRequiredTokens()
- Specified by:
getRequiredTokensin classcom.puppycrawl.tools.checkstyle.api.AbstractCheck
-
beginTree
public void beginTree(com.puppycrawl.tools.checkstyle.api.DetailAST rootAST)
- Overrides:
beginTreein classcom.puppycrawl.tools.checkstyle.api.AbstractCheck
-
visitToken
public void visitToken(com.puppycrawl.tools.checkstyle.api.DetailAST aAST)
- Overrides:
visitTokenin classcom.puppycrawl.tools.checkstyle.api.AbstractCheck
-
leaveToken
public void leaveToken(com.puppycrawl.tools.checkstyle.api.DetailAST aAST)
- Overrides:
leaveTokenin classcom.puppycrawl.tools.checkstyle.api.AbstractCheck
-
-