java.lang.Object
com.puppycrawl.tools.checkstyle.api.AutomaticBean
com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
com.puppycrawl.tools.checkstyle.api.Check
com.puppycrawl.tools.checkstyle.checks.InnerAssignmentCheck
- All Implemented Interfaces:
- com.puppycrawl.tools.checkstyle.api.Configurable, com.puppycrawl.tools.checkstyle.api.Contextualizable
- public class InnerAssignmentCheck
- extends com.puppycrawl.tools.checkstyle.api.Check
Checks for assignments in subexpressions, such as in
String s = Integer.toString(i = 2);.
Rationale: With the exception of for iterators, all assignments
should occur in their own toplevel statement to increase readability.
With inner assignments like the above it is difficult to see all places
where a variable is set.
By default the check will check the following assignment operators:
ASSIGN 55 ,
BAND_ASSIGN 55 ,
BOR_ASSIGN 55 ,
BSR_ASSIGN 55 ,
BXOR_ASSIGN 55 ,
DIV_ASSIGN 55 ,
MINUS_ASSIGN 55 ,
MOD_ASSIGN 55 ,
PLUS_ASSIGN 55 ,
SL_ASSIGN 55 ,
SR_ASSIGN 55 ,
STAR_ASSIGN 55 .
An example of how to configure the check is:
<module name="InnerAssignment"/>
An example of how to configure the check for only =,
+=, and -= operators is:
<module name="InnerAssignment">
<tokens>ASSIGN, PLUS_ASSIGN, MINUS_ASSIGN</tokens>
</module>
| Fields inherited from class com.puppycrawl.tools.checkstyle.api.Check |
|
| Fields inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean |
|
| Methods inherited from class com.puppycrawl.tools.checkstyle.api.Check |
beginTree, destroy, finishTree, getAcceptableTokens, getClassLoader, getFileContents, getLines, getRequiredTokens, getTabWidth, getTokenNames, init, leaveToken, log, log, setClassLoader, setFileContents, setMessages, setTabWidth, setTokens |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
InnerAssignmentCheck
public InnerAssignmentCheck()
getDefaultTokens
public int[] getDefaultTokens()
- Description copied from class:
com.puppycrawl.tools.checkstyle.api.Check
- Returns the default token a check is interested in. Only used if the
configuration for a check does not define the tokens.
visitToken
public void visitToken(com.puppycrawl.tools.checkstyle.api.DetailAST aAST)
- Description copied from class:
com.puppycrawl.tools.checkstyle.api.Check
- Called to process a token.
isAssignment
private boolean isAssignment(com.puppycrawl.tools.checkstyle.api.DetailAST aAST)
- Checks if an AST is an assignment operator.