Class MissingJavadocTypeCheck
java.lang.Object
com.puppycrawl.tools.checkstyle.AbstractAutomaticBean
com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
com.puppycrawl.tools.checkstyle.api.AbstractCheck
com.puppycrawl.tools.checkstyle.checks.javadoc.AbstractJavadocCheck
com.puppycrawl.tools.checkstyle.checks.javadoc.MissingJavadocTypeCheck
- All Implemented Interfaces:
Configurable,Contextualizable
Checks for missing Javadoc comments for class, enum, interface, and annotation interface
definitions. The scope to verify is specified using the
Scope class and defaults
to Scope.PUBLIC. To verify another scope, set property scope to one of the
Scope constants.
- Since:
- 8.20
-
Nested Class Summary
Nested classes/interfaces inherited from class com.puppycrawl.tools.checkstyle.AbstractAutomaticBean
AbstractAutomaticBean.OutputStreamOptions -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate ScopeSpecify the visibility scope where Javadoc comments are not checked.Stores all Javadoc comment nodes collected during the tree traversal.static final StringA key is pointing to the warning message text in "messages.properties" file.private ScopeSpecify the visibility scope where Javadoc comments are checked.Specify annotations that allow missed documentation.Fields inherited from class com.puppycrawl.tools.checkstyle.checks.javadoc.AbstractJavadocCheck
MSG_JAVADOC_PARSE_RULE_ERROR, MSG_KEY_UNCLOSED_HTML_TAG -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidCalled before the starting to process a tree.private voidCollects all Javadoc comment nodes in the AST tree and stores them injavadocComments.int[]The configurable token set.int[]Returns the default javadoc token types a check is interested in.int[]Returns the default token a check is interested in.int[]The tokens that this check must be registered for.private booleanhasJavadoc(DetailAST ast) Determines whether the specified type AST node has a valid Javadoc comment immediately preceding it, with no intervening executable code.private static booleanisAllowedBetweenJavadocAndType(int tokenType) Returns whether the given token type is permitted to appear between a Javadoc comment and a type declaration.private static booleannoInterveningCode(DetailAST javadoc, DetailAST type) Checks whether there is any executable code between the Javadoc comment and the type declaration by walking AST siblings between them.voidsetExcludeScope(Scope excludeScope) Setter to specify the visibility scope where Javadoc comments are not checked.voidSetter to specify the visibility scope where Javadoc comments are checked.voidsetSkipAnnotations(String... userAnnotations) Setter to specify annotations that allow missed documentation.private booleanshouldCheck(DetailAST ast) Whether we should check this node.voidvisitJavadocToken(DetailNode node) Called to process a Javadoc token.voidvisitToken(DetailAST ast) Called to process a token.Methods inherited from class com.puppycrawl.tools.checkstyle.checks.javadoc.AbstractJavadocCheck
acceptJavadocWithNonTightHtml, beginJavadocTree, destroy, finishJavadocTree, getAcceptableJavadocTokens, getBlockCommentAst, getRequiredJavadocTokens, init, isCommentNodesRequired, leaveJavadocToken, setJavadocTokens, setViolateExecutionOnNonTightHtmlMethods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractCheck
clearViolations, finishTree, getFileContents, getFilePath, getLine, getLineCodePoints, getLines, getTabWidth, getTokenNames, getViolations, leaveToken, log, log, log, setFileContents, setTabWidth, setTokensMethods inherited from class com.puppycrawl.tools.checkstyle.api.AbstractViolationReporter
finishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverityMethods inherited from class com.puppycrawl.tools.checkstyle.AbstractAutomaticBean
configure, contextualize, getConfiguration, setupChild
-
Field Details
-
MSG_JAVADOC_MISSING
A key is pointing to the warning message text in "messages.properties" file.- See Also:
-
javadocComments
Stores all Javadoc comment nodes collected during the tree traversal. Used to match a Javadoc comment to a type declaration. -
scope
Specify the visibility scope where Javadoc comments are checked. -
excludeScope
Specify the visibility scope where Javadoc comments are not checked. -
skipAnnotations
Specify annotations that allow missed documentation. If annotation is present in target sources in multiple forms of qualified name, all forms should be listed in this property.
-
-
Constructor Details
-
MissingJavadocTypeCheck
public MissingJavadocTypeCheck()
-
-
Method Details
-
setScope
Setter to specify the visibility scope where Javadoc comments are checked.- Parameters:
scope- a scope.- Since:
- 8.20
-
setExcludeScope
Setter to specify the visibility scope where Javadoc comments are not checked.- Parameters:
excludeScope- a scope.- Since:
- 8.20
-
setSkipAnnotations
Setter to specify annotations that allow missed documentation. If annotation is present in target sources in multiple forms of qualified name, all forms should be listed in this property.- Parameters:
userAnnotations- user's value.- Since:
- 8.20
-
getDefaultJavadocTokens
Description copied from class:AbstractJavadocCheckReturns the default javadoc token types a check is interested in.- Specified by:
getDefaultJavadocTokensin classAbstractJavadocCheck- Returns:
- the default javadoc token types
- See Also:
-
visitJavadocToken
Description copied from class:AbstractJavadocCheckCalled to process a Javadoc token.- Specified by:
visitJavadocTokenin classAbstractJavadocCheck- Parameters:
node- the token to process
-
beginTree
Description copied from class:AbstractCheckCalled before the starting to process a tree. Ideal place to initialize information that is to be collected whilst processing a tree.- Overrides:
beginTreein classAbstractJavadocCheck- Parameters:
node- the root of the tree
-
collectCommentNodes
Collects all Javadoc comment nodes in the AST tree and stores them injavadocComments. These comments are later used to determine whether a type declaration has an associated Javadoc comment.- Parameters:
ast- the root AST node from which comment nodes are collected
-
getDefaultTokens
Description copied from class:AbstractCheckReturns the default token a check is interested in. Only used if the configuration for a check does not define the tokens.- Overrides:
getDefaultTokensin classAbstractJavadocCheck- Returns:
- the default tokens
- See Also:
-
getAcceptableTokens
Description copied from class:AbstractCheckThe 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.- Overrides:
getAcceptableTokensin classAbstractJavadocCheck- Returns:
- the token set this check is designed for.
- See Also:
-
getRequiredTokens
Description copied from class:AbstractCheckThe tokens that this check must be registered for.- Overrides:
getRequiredTokensin classAbstractJavadocCheck- Returns:
- the token set this must be registered for.
- See Also:
-
visitToken
Description copied from class:AbstractCheckCalled to process a token.- Overrides:
visitTokenin classAbstractJavadocCheck- Parameters:
ast- the token to process
-
hasJavadoc
Determines whether the specified type AST node has a valid Javadoc comment immediately preceding it, with no intervening executable code.- Parameters:
ast- the AST node representing the type definition- Returns:
trueif a valid Javadoc comment exists before the type;falseotherwise
-
noInterveningCode
Checks whether there is any executable code between the Javadoc comment and the type declaration by walking AST siblings between them.- Parameters:
javadoc- the AST node representing the Javadoc commenttype- the AST node representing the type declaration- Returns:
trueif no executable code exists between them;falseotherwise
-
isAllowedBetweenJavadocAndType
Returns whether the given token type is permitted to appear between a Javadoc comment and a type declaration.- Parameters:
tokenType- the token type to check- Returns:
trueif the token is allowed between Javadoc and a type;falseotherwise
-
shouldCheck
Whether we should check this node.- Parameters:
ast- a given node.- Returns:
- whether we should check a given node.
-