public class IllegalTokenTextCheck extends AbstractCheck
Checks specified tokens text for matching an illegal pattern. By default no tokens are specified.
format - Define the RegExp for illegal pattern.
Type is java.lang.String.
Default value is "^$" (empty).
ignoreCase - Control whether to ignore case when matching.
Type is boolean.
Default value is false.
message - Define the message which is used to notify about violations;
if empty then the default message is used.
Type is java.lang.String.
Default value is "".
tokens - tokens to check
Type is int[].
Default value is: empty.
To configure the check to forbid String literals containing "a href":
<module name="IllegalTokenText"> <property name="tokens" value="STRING_LITERAL"/> <property name="format" value="a href"/> </module>
Example:
public void myTest() {
String test = "a href"; // violation
String test2 = "A href"; // OK, case is sensitive
}
To configure the check to forbid String literals containing "a href"
for the ignoreCase mode:
<module name="IllegalTokenText"> <property name="tokens" value="STRING_LITERAL"/> <property name="format" value="a href"/> <property name="ignoreCase" value="true"/> </module>
Example:
public void myTest() {
String test = "a href"; // violation
String test2 = "A href"; // violation, case is ignored
}
To configure the check to forbid leading zeros in an integer literal, other than zero and a hex literal:
<module name="IllegalTokenText"> <property name="tokens" value="NUM_INT,NUM_LONG"/> <property name="format" value="^0[^lx]"/> <property name="ignoreCase" value="true"/> </module>
Example:
public void myTest() {
int test1 = 0; // OK
int test2 = 0x111; // OK
int test3 = 0X111; // OK, case is ignored
int test4 = 010; // violation
long test5 = 0L; // OK
long test6 = 010L; // violation
}
Parent is com.puppycrawl.tools.checkstyle.TreeWalker
Violation Message Keys:
illegal.token.text
AutomaticBean.OutputStreamOptions| Modifier and Type | Field and Description |
|---|---|
static String |
MSG_KEY
A key is pointing to the warning message text in "messages.properties"
file.
|
| Constructor and Description |
|---|
IllegalTokenTextCheck() |
| 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.
|
boolean |
isCommentNodesRequired()
Whether comment nodes are required or not.
|
void |
setFormat(String format)
Setter to define the RegExp for illegal pattern.
|
void |
setIgnoreCase(boolean caseInsensitive)
Setter to control whether to ignore case when matching.
|
void |
setMessage(String message)
Setter to define the message which is used to notify about violations;
if empty then the default message is used.
|
void |
visitToken(DetailAST ast)
Called to process a token.
|
beginTree, clearMessages, destroy, finishTree, getFileContents, getLine, getLines, getMessages, getTabWidth, getTokenNames, init, leaveToken, log, log, log, setFileContents, setTabWidth, setTokensfinishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverityconfigure, contextualize, getConfiguration, setupChildpublic static final String MSG_KEY
public IllegalTokenTextCheck()
public int[] getDefaultTokens()
AbstractCheckgetDefaultTokens in class AbstractCheckTokenTypespublic int[] getAcceptableTokens()
AbstractCheckgetAcceptableTokens in class AbstractCheckTokenTypespublic int[] getRequiredTokens()
AbstractCheckgetRequiredTokens in class AbstractCheckTokenTypespublic boolean isCommentNodesRequired()
AbstractCheckisCommentNodesRequired in class AbstractCheckpublic void visitToken(DetailAST ast)
AbstractCheckvisitToken in class AbstractCheckast - the token to processpublic void setMessage(String message)
message - custom message which should be used
to report about violations.public void setFormat(String format)
format - a String valuepublic void setIgnoreCase(boolean caseInsensitive)
caseInsensitive - true if the match is case insensitive.Copyright © 2001–2020. All rights reserved.