com.puppycrawl.tools.checkstyle.checks.coding

Class FallThroughCheck

Implemented Interfaces:
Configurable, Contextualizable

public class FallThroughCheck
extends Check

Checks for fall through in switch statements Finds locations where a case contains Java code - but lacks a break, return, throw or continue statement.

The check honors special comments to suppress warnings about the fall through. By default the comments "fallthru", "fall through", "falls through" and "fallthrough" are recognized.

The following fragment of code will NOT trigger the check, because of the comment "fallthru".

 case 3:
     x = 2;
     // fallthru
 case 4:
 

The recognized relief comment can be configured with the property reliefPattern. Default value of this regular expression is "fallthru|fall through|fallthrough|falls through".

An example of how to configure the check is:

 <module name="FallThrough">
     <property name="reliefPattern"
                  value="Fall Through"/>
 </module>
 
Author:
o_sukhodolsky

Constructor Summary

FallThroughCheck()
Creates new instance of the check.

Method Summary

int[]
getDefaultTokens()
int[]
getRequiredTokens()
void
init()
void
setCheckLastCaseGroup(boolean aValue)
Configures whether we need to check last case group or not.
void
setReliefPattern(String aPattern)
Set the relief pattern.
void
visitToken(DetailAST aAST)

Methods inherited from class com.puppycrawl.tools.checkstyle.api.Check

beginTree, destroy, finishTree, getAcceptableTokens, getClassLoader, getDefaultTokens, getFileContents, getLines, getRequiredTokens, getTabWidth, getTokenNames, init, leaveToken, log, log, setClassLoader, setFileContents, setMessages, setTabWidth, setTokens, visitToken

Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter

getId, getMessageBundle, getSeverity, getSeverityLevel, log, log, log, log, log, log, log, log, log, log, log, setId, setSeverity

Methods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean

configure, contextualize, finishLocalSetup, getConfiguration, setupChild

Constructor Details

FallThroughCheck

public FallThroughCheck()
Creates new instance of the check.

Method Details

getDefaultTokens

public int[] getDefaultTokens()
Overrides:
getDefaultTokens in interface Check

getRequiredTokens

public int[] getRequiredTokens()
Overrides:
getRequiredTokens in interface Check

init

public void init()
Overrides:
init in interface Check

setCheckLastCaseGroup

public void setCheckLastCaseGroup(boolean aValue)
Configures whether we need to check last case group or not.
Parameters:
aValue - new value of the property.

setReliefPattern

public void setReliefPattern(String aPattern)
Set the relief pattern.
Parameters:
aPattern - The regular expression pattern.

visitToken

public void visitToken(DetailAST aAST)
Overrides:
visitToken in interface Check