Class IfHandler
java.lang.Object
com.puppycrawl.tools.checkstyle.checks.indentation.AbstractExpressionHandler
com.puppycrawl.tools.checkstyle.checks.indentation.BlockParentHandler
com.puppycrawl.tools.checkstyle.checks.indentation.IfHandler
Handler for if statements.
-
Constructor Summary
ConstructorsConstructorDescriptionIfHandler(IndentationCheck indentCheck, DetailAST ast, AbstractExpressionHandler parent) Construct an instance of this handler with the given indentation check, abstract syntax tree, and parent handler. -
Method Summary
Modifier and TypeMethodDescriptionprivate voidCheck the indentation of the conditional expression.voidCheck the indentation of the expression we are handling.protected voidCheck the indent of the top level token.private static DetailASTgetIfStatementRightParen(DetailAST literalIfAst) Returns right parenthesis of if statement.protected IndentLevelCompute the indentation amount for this handler.Indentation level suggested for a child element.private booleanDetermines if this 'if' statement is part of an 'else' clause and on the same line.Methods inherited from class com.puppycrawl.tools.checkstyle.checks.indentation.BlockParentHandler
canChildrenBeNested, curlyIndent, getCheckedChildren, getChildrenExpectedIndent, getLeftCurly, getListChild, getNonListChild, getRightCurly, getTopLevelAstMethods inherited from class com.puppycrawl.tools.checkstyle.checks.indentation.AbstractExpressionHandler
checkChildren, checkExpressionSubtree, checkLeftParen, checkModifiers, checkRightParen, checkWrappingIndentation, checkWrappingIndentation, expandedTabsColumnNo, findSubtreeAst, getBasicOffset, getBraceAdjustment, getFirstAstNode, getFirstLine, getFirstToken, getIndent, getIndentCheck, getLineStart, getLineStart, getMainAst, getParent, isOnStartOfLine, logError, logError, shouldIncreaseIndent
-
Constructor Details
-
IfHandler
Construct an instance of this handler with the given indentation check, abstract syntax tree, and parent handler.- Parameters:
indentCheck- the indentation checkast- the abstract syntax treeparent- the parent handler
-
-
Method Details
-
getSuggestedChildIndent
Description copied from class:AbstractExpressionHandlerIndentation level suggested for a child element. Children don't have to respect this, but most do.- Overrides:
getSuggestedChildIndentin classBlockParentHandler- Parameters:
child- child AST (so suggestion level can differ based on child type)- Returns:
- suggested indentation for child
-
getIndentImpl
Description copied from class:AbstractExpressionHandlerCompute the indentation amount for this handler.- Overrides:
getIndentImplin classAbstractExpressionHandler- Returns:
- the expected indentation amount
-
isIfAfterElse
Determines if this 'if' statement is part of an 'else' clause and on the same line.- Returns:
- true if this 'if' is part of an 'else', false otherwise
-
checkTopLevelToken
Description copied from class:BlockParentHandlerCheck the indent of the top level token.- Overrides:
checkTopLevelTokenin classBlockParentHandler
-
checkCondExpr
Check the indentation of the conditional expression. -
checkIndentation
Description copied from class:AbstractExpressionHandlerCheck the indentation of the expression we are handling.- Overrides:
checkIndentationin classBlockParentHandler
-
getIfStatementRightParen
Returns right parenthesis of if statement.- Parameters:
literalIfAst- literal-if ast node(TokenTypes.LITERAL_IF)- Returns:
- right parenthesis of if statement.
-