public class JavadocTagContinuationIndentationCheck extends AbstractJavadocCheck
Checks the indentation of the continuation lines in block tags. That is whether the continued description of at clauses should be indented or not. If the text is not properly indented it throws a violation. A continuation line is when the description starts/spans past the line with the tag. Default indentation required is at least 4, but this can be changed with the help of properties below.
violateExecutionOnNonTightHtml - Control when to print violations
if the Javadoc being examined by this check violates the tight html rules defined at
Tight-HTML Rules.
Type is boolean.
Default value is false.
offset - Specify how many spaces to use for new indentation level.
Type is int.
Default value is 4.
To configure the default check:
<module name="JavadocTagContinuationIndentation"/>
Example:
/**
* @tag comment
* Indentation spacing is 1. Line with violation
* Indentation spacing is 2. Line with violation
* Indentation spacing is 4. OK
*/
public class Test {
}
To configure the check with two spaces indentation:
<module name="JavadocTagContinuationIndentation"> <property name="offset" value="2"/> </module>
Example:
/**
* @tag comment
* Indentation spacing is 0. Line with violation
* Indentation spacing is 2. OK
* Indentation spacing is 1. Line with violation
*/
public class Test {
}
To configure the check to show violations for Tight-HTML Rules:
<module name="JavadocTagContinuationIndentation"> <property name="violateExecutionOnNonTightHtml" value="true"/> </module>
Example:
/**
* <p> 'p' tag is unclosed. Line with violation, this html tag needs closing tag.
* <p> 'p' tag is closed</p>. OK
*/
public class Test {
}
Parent is com.puppycrawl.tools.checkstyle.TreeWalker
Violation Message Keys:
javadoc.missed.html.close
javadoc.parse.rule.error
javadoc.wrong.singleton.html.tag
tag.continuation.indent
AutomaticBean.OutputStreamOptions| Modifier and Type | Field and Description |
|---|---|
private static int |
DEFAULT_INDENTATION
Default tag continuation indentation.
|
static java.lang.String |
MSG_KEY
A key is pointing to the warning message text in "messages.properties"
file.
|
private int |
offset
Specify how many spaces to use for new indentation level.
|
MSG_JAVADOC_MISSED_HTML_CLOSE, MSG_JAVADOC_PARSE_RULE_ERROR, MSG_JAVADOC_WRONG_SINGLETON_TAG| Constructor and Description |
|---|
JavadocTagContinuationIndentationCheck() |
| Modifier and Type | Method and Description |
|---|---|
private static java.util.List<DetailNode> |
getAllNewlineNodes(DetailNode descriptionNode)
Finds and collects all NEWLINE nodes inside DESCRIPTION node.
|
int[] |
getDefaultJavadocTokens()
Returns the default javadoc token types a check is interested in.
|
int[] |
getRequiredJavadocTokens()
The javadoc tokens that this check must be registered for.
|
private static boolean |
isInlineDescription(DetailNode description)
Checks, if description node is a description of in-line tag.
|
private boolean |
isViolation(DetailNode textNode)
Checks if a text node meets the criteria for a violation.
|
void |
setOffset(int offset)
Setter to specify how many spaces to use for new indentation level.
|
void |
visitJavadocToken(DetailNode ast)
Called to process a Javadoc token.
|
acceptJavadocWithNonTightHtml, beginJavadocTree, beginTree, destroy, finishJavadocTree, finishTree, getAcceptableJavadocTokens, getAcceptableTokens, getBlockCommentAst, getDefaultTokens, getRequiredTokens, init, isCommentNodesRequired, leaveJavadocToken, setJavadocTokens, setViolateExecutionOnNonTightHtml, visitTokenclearViolations, getFileContents, getLine, getLineCodePoints, getLines, getTabWidth, getTokenNames, getViolations, leaveToken, log, log, log, setFileContents, setTabWidth, setTokensfinishLocalSetup, getCustomMessages, getId, getMessageBundle, getSeverity, getSeverityLevel, setId, setSeverityconfigure, contextualize, getConfiguration, setupChildpublic static final java.lang.String MSG_KEY
private static final int DEFAULT_INDENTATION
private int offset
public JavadocTagContinuationIndentationCheck()
public void setOffset(int offset)
offset - custom value.public int[] getDefaultJavadocTokens()
AbstractJavadocCheckgetDefaultJavadocTokens in class AbstractJavadocCheckJavadocTokenTypespublic int[] getRequiredJavadocTokens()
AbstractJavadocCheckgetRequiredJavadocTokens in class AbstractJavadocCheckJavadocTokenTypespublic void visitJavadocToken(DetailNode ast)
AbstractJavadocCheckvisitJavadocToken in class AbstractJavadocCheckast - the token to processprivate boolean isViolation(DetailNode textNode)
offset characters, then a violation is
detected if the text is not blank or the next node is not a newline.
If the text is longer than offset characters, then a violation is
detected if any of the first offset characters are not blank.textNode - the node to check.private static java.util.List<DetailNode> getAllNewlineNodes(DetailNode descriptionNode)
descriptionNode - DESCRIPTION node.private static boolean isInlineDescription(DetailNode description)
description - DESCRIPTION node.Copyright © 2001-2022. All Rights Reserved.