public class LocalFinalVariableNameCheck extends AbstractNameCheck
Checks that local final variable names conform to a specified pattern. A catch parameter and resources in try statements are considered to be a local, final variables.
format
- Specifies valid identifiers.
Type is java.util.regex.Pattern
.
Default value is "^[a-z][a-zA-Z0-9]*$"
.
tokens
- tokens to check
Type is int[]
.
Default value is:
VARIABLE_DEF,
PARAMETER_DEF,
RESOURCE.
An example of how to configure the check is:
<module name="LocalFinalVariableName"/>
An example of how to configure the check for names that are only upper case letters and digits is:
<module name="LocalFinalVariableName"> <property name="format" value="^[A-Z][A-Z0-9]*$"/> </module>
Code Example:
class MyClass { void MyMethod() { try { final int VAR1 = 5; // OK final int var1 = 10; // violation, name 'var1' must match pattern "^[A-Z][A-Z0-9]*$" } catch (Exception ex) { final int VAR2 = 15; // OK final int var2 = 20; // violation, name 'var2' must match pattern "^[A-Z][A-Z0-9]*$" } } }
An example of how to configure the check for names of local final parameters and resources in try statements (without checks on variables):
<module name="LocalFinalVariableName"> <property name="format" value="^[A-Z][A-Z0-9]*$"/> <property name="tokens" value="PARAMETER_DEF,RESOURCE"/> </module>
Code Example:
class MyClass { void MyMethod() { try(Scanner scanner = new Scanner()) { // violation, name 'scanner' must // match pattern '^[A-Z][A-Z0-9]*$' final int VAR1 = 5; // OK final int var1 = 10; // OK } catch (final Exception ex) { // violation, name 'ex' // must match pattern '^[A-Z][A-Z0-9]*$' final int VAR2 = 15; // OK final int var2 = 20; // OK } } }
Parent is com.puppycrawl.tools.checkstyle.TreeWalker
Violation Message Keys:
name.invalidPattern
AutomaticBean.OutputStreamOptions
MSG_INVALID_PATTERN
Constructor and Description |
---|
LocalFinalVariableNameCheck()
Creates a new
LocalFinalVariableNameCheck instance. |
Modifier and Type | Method and Description |
---|---|
int[] |
getAcceptableTokens()
The configurable token set.
|
int[] |
getDefaultTokens()
Returns the default token a check is interested in.
|
int[] |
getRequiredTokens()
The tokens that this check must be registered for.
|
protected boolean |
mustCheckName(DetailAST ast)
Decides whether the name of an AST should be checked against
the format regexp.
|
setFormat, visitToken
beginTree, clearMessages, destroy, finishTree, getFileContents, getLine, getLines, getMessages, getTabWidth, getTokenNames, init, isCommentNodesRequired, leaveToken, log, log, log, setFileContents, setTabWidth, setTokens
finishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverity
configure, contextualize, getConfiguration, setupChild
public LocalFinalVariableNameCheck()
LocalFinalVariableNameCheck
instance.public int[] getDefaultTokens()
AbstractCheck
getDefaultTokens
in class AbstractCheck
TokenTypes
public int[] getAcceptableTokens()
AbstractCheck
getAcceptableTokens
in class AbstractCheck
TokenTypes
public int[] getRequiredTokens()
AbstractCheck
getRequiredTokens
in class AbstractCheck
TokenTypes
protected final boolean mustCheckName(DetailAST ast)
AbstractNameCheck
mustCheckName
in class AbstractNameCheck
ast
- the AST to check.Copyright © 2001–2020. All rights reserved.