Class JavadocVariableCheck
- All Implemented Interfaces:
Configurable
,Contextualizable
Checks that a variable has a Javadoc comment. Ignores serialVersionUID
fields.
-
Property
scope
- Specify the visibility scope where Javadoc comments are checked. Type iscom.puppycrawl.tools.checkstyle.api.Scope
. Default value isprivate
. -
Property
excludeScope
- Specify the visibility scope where Javadoc comments are not checked. Type iscom.puppycrawl.tools.checkstyle.api.Scope
. Default value isnull
. -
Property
ignoreNamePattern
- Specify the regexp to define variable names to ignore. Type isjava.util.regex.Pattern
. Default value isnull
. -
Property
tokens
- tokens to check Type isjava.lang.String[]
. Validation type istokenSet
. Default value is: ENUM_CONSTANT_DEF.
To configure the default check:
<module name="JavadocVariable"/>
By default, this setting will report a violation if there is no javadoc for any scope member.
public class Test { private int a; // violation, missing javadoc for private member /** * Some description here */ private int b; // OK protected int c; // violation, missing javadoc for protected member public int d; // violation, missing javadoc for public member /*package*/ int e; // violation, missing javadoc for package member }
To configure the check for public
scope:
<module name="JavadocVariable"> <property name="scope" value="public"/> </module>
This setting will report a violation if there is no javadoc for public
member.
public class Test { private int a; // OK /** * Some description here */ private int b; // OK protected int c; // OK public int d; // violation, missing javadoc for public member /*package*/ int e; // OK }
To configure the check for members which are in private
,
but not in protected
scope:
<module name="JavadocVariable"> <property name="scope" value="private"/> <property name="excludeScope" value="protected"/> </module>
This setting will report a violation if there is no javadoc for private
member and ignores protected
member.
public class Test { private int a; // violation, missing javadoc for private member /** * Some description here */ private int b; // OK protected int c; // OK public int d; // OK /*package*/ int e; // violation, missing javadoc for package member }
To ignore absence of Javadoc comments for variables with names log
or logger
:
<module name="JavadocVariable"> <property name="ignoreNamePattern" value="log|logger"/> </module>
This setting will report a violation if there is no javadoc for any scope
member and ignores members with name log
or logger
.
public class Test { private int a; // violation, missing javadoc for private member /** * Some description here */ private int b; // OK protected int c; // violation, missing javadoc for protected member public int d; // violation, missing javadoc for public member /*package*/ int e; // violation, missing javadoc for package member private int log; // OK private int logger; // OK }
Parent is com.puppycrawl.tools.checkstyle.TreeWalker
Violation Message Keys:
-
javadoc.missing
- Since:
- 3.0
-
Nested Class Summary
Nested classes/interfaces inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
AutomaticBean.OutputStreamOptions
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Scope
Specify the visibility scope where Javadoc comments are not checked.private Pattern
Specify the regexp to define variable names to ignore.static final String
A key is pointing to the warning message text in "messages.properties" file.private Scope
Specify the visibility scope where Javadoc comments are checked. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint[]
The configurable token set.int[]
Returns the default token a check is interested in.int[]
The tokens that this check must be registered for.private boolean
Decides whether the variable name of an AST is in the ignore list.void
setExcludeScope
(Scope excludeScope) Setter to specify the visibility scope where Javadoc comments are not checked.void
setIgnoreNamePattern
(Pattern pattern) Setter to specify the regexp to define variable names to ignore.void
Setter to specify the visibility scope where Javadoc comments are checked.private boolean
shouldCheck
(DetailAST ast) Whether we should check this node.void
visitToken
(DetailAST ast) Called to process a token.Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractCheck
beginTree, clearViolations, destroy, finishTree, getFileContents, getLine, getLineCodePoints, getLines, getTabWidth, getTokenNames, getViolations, init, isCommentNodesRequired, leaveToken, log, log, log, setFileContents, setTabWidth, setTokens
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
finishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverity
Methods inherited from class com.puppycrawl.tools.checkstyle.api.AutomaticBean
configure, contextualize, getConfiguration, setupChild
-
Field Details
-
MSG_JAVADOC_MISSING
A key is pointing to the warning message text in "messages.properties" file.- See Also:
-
scope
Specify the visibility scope where Javadoc comments are checked. -
excludeScope
Specify the visibility scope where Javadoc comments are not checked. -
ignoreNamePattern
Specify the regexp to define variable names to ignore.
-
-
Constructor Details
-
JavadocVariableCheck
public JavadocVariableCheck()
-
-
Method Details
-
setScope
Setter to specify the visibility scope where Javadoc comments are checked.- Parameters:
scope
- a scope.
-
setExcludeScope
Setter to specify the visibility scope where Javadoc comments are not checked.- Parameters:
excludeScope
- a scope.
-
setIgnoreNamePattern
Setter to specify the regexp to define variable names to ignore.- Parameters:
pattern
- a pattern.
-
getDefaultTokens
public int[] getDefaultTokens()Description copied from class:AbstractCheck
Returns the default token a check is interested in. Only used if the configuration for a check does not define the tokens.- Specified by:
getDefaultTokens
in classAbstractCheck
- Returns:
- the default tokens
- See Also:
-
getAcceptableTokens
public int[] getAcceptableTokens()Description copied from class:AbstractCheck
The configurable token set. Used to protect Checks against malicious users who specify an unacceptable token set in the configuration file. The default implementation returns the check's default tokens.- Specified by:
getAcceptableTokens
in classAbstractCheck
- Returns:
- the token set this check is designed for.
- See Also:
-
getRequiredTokens
public int[] getRequiredTokens()Description copied from class:AbstractCheck
The tokens that this check must be registered for.- Specified by:
getRequiredTokens
in classAbstractCheck
- Returns:
- the token set this must be registered for.
- See Also:
-
visitToken
Description copied from class:AbstractCheck
Called to process a token.- Overrides:
visitToken
in classAbstractCheck
- Parameters:
ast
- the token to process
-
isIgnored
Decides whether the variable name of an AST is in the ignore list.- Parameters:
ast
- the AST to check- Returns:
- true if the variable name of ast is in the ignore list.
-
shouldCheck
Whether we should check this node.- Parameters:
ast
- a given node.- Returns:
- whether we should check a given node.
-