Class NewHandler
- java.lang.Object
-
- com.puppycrawl.tools.checkstyle.checks.indentation.AbstractExpressionHandler
-
- com.puppycrawl.tools.checkstyle.checks.indentation.NewHandler
-
public class NewHandler extends AbstractExpressionHandler
Handler for operator new.
-
-
Constructor Summary
Constructors Constructor Description NewHandler(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
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcheckIndentation()Check the indentation of the expression we are handling.private booleandoesChainedMethodNeedsLineWrapping()The function checks if the new keyword is a child of chained method calls, it checks if the new is directly followed by equal operator or return operator.protected IndentLevelgetIndentImpl()Compute the indentation amount for this handler.private intgetLineWrappingIndent()A shortcut forIndentationCheckproperty.IndentLevelgetSuggestedChildIndent(AbstractExpressionHandler child)Indentation level suggested for a child element.protected booleanshouldIncreaseIndent()Checks that indentation should be increased after first line in checkLinesIndent().-
Methods 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
-
-
-
-
Constructor Detail
-
NewHandler
public NewHandler(IndentationCheck indentCheck, DetailAST ast, AbstractExpressionHandler parent)
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 Detail
-
checkIndentation
public void checkIndentation()
Description copied from class:AbstractExpressionHandlerCheck the indentation of the expression we are handling.- Specified by:
checkIndentationin classAbstractExpressionHandler
-
getSuggestedChildIndent
public IndentLevel getSuggestedChildIndent(AbstractExpressionHandler child)
Description copied from class:AbstractExpressionHandlerIndentation level suggested for a child element. Children don't have to respect this, but most do.- Overrides:
getSuggestedChildIndentin classAbstractExpressionHandler- Parameters:
child- child AST (so suggestion level can differ based on child type)- Returns:
- suggested indentation for child
-
getIndentImpl
protected IndentLevel getIndentImpl()
Description copied from class:AbstractExpressionHandlerCompute the indentation amount for this handler.- Overrides:
getIndentImplin classAbstractExpressionHandler- Returns:
- the expected indentation amount
-
getLineWrappingIndent
private int getLineWrappingIndent()
A shortcut forIndentationCheckproperty.- Returns:
- value of lineWrappingIndentation property
of
IndentationCheck
-
shouldIncreaseIndent
protected boolean shouldIncreaseIndent()
Description copied from class:AbstractExpressionHandlerChecks that indentation should be increased after first line in checkLinesIndent().- Overrides:
shouldIncreaseIndentin classAbstractExpressionHandler- Returns:
- true if indentation should be increased after first line in checkLinesIndent() false otherwise
-
doesChainedMethodNeedsLineWrapping
private boolean doesChainedMethodNeedsLineWrapping()
The function checks if the new keyword is a child of chained method calls, it checks if the new is directly followed by equal operator or return operator.- Returns:
- true if the new it is chained method calls and new keyword is directly followed by assign or return
-
-