public class CatchParameterNameCheck extends AbstractNameCheck
Checks that catch
parameter names conform to a specified pattern.
Default pattern has the following characteristic:
e
abbreviation (suitable for exceptions end errors)ex
abbreviation (suitable for exceptions)t
abbreviation (suitable for throwables)e1
or t2
pException
ie
or ee
format
- Specifies valid identifiers.
Type is java.util.regex.Pattern
.
Default value is "^(e|t|ex|[a-z][a-z][a-zA-Z]+)$"
.
An example of how to configure the check is:
<module name="CatchParameterName"/>
Example:
public class MyTest { public void myTest() { try { // ... } catch (ArithmeticException e) { // OK // ... } catch (ArrayIndexOutOfBoundsException ex) { // OK // ... } catch (Throwable t) { // OK // ... } catch (IndexOutOfBoundsException e123) { // violation, digits // not allowed // ... } catch (NullPointerException ab) { // violation, should have at least // three characters if not e|t|ex // ... } catch (ArrayStoreException abc) { // OK // ... } catch (InterruptedException aBC) { // violation, first two characters // should be in lowercase // ... } catch (RuntimeException abC) { // OK // ... } catch (Exception abCD) { // OK // ... } } }
An example of how to configure the check for names that begin with a lower case letter, followed by any letters or digits is:
Configuration:
<module name="CatchParameterName"> <property name="format" value="^[a-z][a-zA-Z0-9]+$"/> </module>
Example:
public class MyTest { public void myTest() { try { // ... } catch (ArithmeticException ex) { // OK // ... } catch (ArrayIndexOutOfBoundsException ex2) { // OK // ... } catch (IOException thirdException) { // OK // ... } catch (Exception FourthException) { // violation, the initial letter // should be lowercase // ... } } }
Parent is com.puppycrawl.tools.checkstyle.TreeWalker
Violation Message Keys:
name.invalidPattern
AutomaticBean.OutputStreamOptions
MSG_INVALID_PATTERN
Constructor and Description |
---|
CatchParameterNameCheck()
Creates a new
CatchParameterNameCheck 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 CatchParameterNameCheck()
CatchParameterNameCheck
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 boolean mustCheckName(DetailAST ast)
AbstractNameCheck
mustCheckName
in class AbstractNameCheck
ast
- the AST to check.Copyright © 2001–2020. All rights reserved.