public class MethodCallHandler extends AbstractExpressionHandler
Constructor and Description |
---|
MethodCallHandler(IndentationCheck indentCheck,
DetailAST ast,
AbstractExpressionHandler parent)
Construct an instance of this handler with the given indentation check,
abstract syntax tree, and parent handler.
|
Modifier and Type | Method and Description |
---|---|
private static boolean |
areMethodsChained(DetailAST ast1,
DetailAST ast2)
Checks if ast2 is a chained method call that starts on the same level as ast1 ends.
|
void |
checkIndentation()
Check the indentation of the expression we are handling.
|
private static DetailAST |
getFirstAst(DetailAST ast)
Get the first AST of the specified method call.
|
protected IndentLevel |
getIndentImpl()
Compute the indentation amount for this handler.
|
private static DetailAST |
getMethodCallLastNode(DetailAST firstNode)
Returns method call right paren.
|
IndentLevel |
getSuggestedChildIndent(AbstractExpressionHandler child)
Indentation level suggested for a child element.
|
private boolean |
isChainedMethodCallWrapped()
If this is the first chained method call which was moved to the next line.
|
protected boolean |
shouldIncreaseIndent()
Checks that indentation should be increased after first line in checkLinesIndent().
|
areOnSameLine, checkChildren, checkExpressionSubtree, checkLeftParen, checkModifiers, checkRightParen, checkWrappingIndentation, checkWrappingIndentation, expandedTabsColumnNo, findSubtreeLines, getBasicOffset, getBraceAdjustment, getFirstLine, getFirstToken, getIndent, getIndentCheck, getLineStart, getLineStart, getMainAst, getParent, isOnStartOfLine, logError, logError
public MethodCallHandler(IndentationCheck indentCheck, DetailAST ast, AbstractExpressionHandler parent)
indentCheck
- the indentation checkast
- the abstract syntax treeparent
- the parent handlerprotected IndentLevel getIndentImpl()
AbstractExpressionHandler
getIndentImpl
in class AbstractExpressionHandler
private static boolean areMethodsChained(DetailAST ast1, DetailAST ast2)
value.methodOne(
argument1
).methodTwo(
argument2
);
ast1
- Ast1ast2
- Ast2private boolean isChainedMethodCallWrapped()
private static DetailAST getFirstAst(DetailAST ast)
ast
- the method callpublic IndentLevel getSuggestedChildIndent(AbstractExpressionHandler child)
AbstractExpressionHandler
getSuggestedChildIndent
in class AbstractExpressionHandler
child
- child AST (so suggestion level can differ based on child
type)public void checkIndentation()
AbstractExpressionHandler
checkIndentation
in class AbstractExpressionHandler
protected boolean shouldIncreaseIndent()
AbstractExpressionHandler
shouldIncreaseIndent
in class AbstractExpressionHandler
private static DetailAST getMethodCallLastNode(DetailAST firstNode)
firstNode
- method call ast(TokenTypes.METHOD_CALL)