Class MethodCallHandler

    • Constructor Detail

      • MethodCallHandler

        public MethodCallHandler​(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 check
        ast - the abstract syntax tree
        parent - the parent handler
    • Method Detail

      • areMethodsChained

        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. In other words, if the right paren of ast1 is on the same level as the lparen of ast2: value.methodOne( argument1 ).methodTwo( argument2 );
        Parameters:
        ast1 - Ast1
        ast2 - Ast2
        Returns:
        True if ast2 begins on the same level that ast1 ends
      • isChainedMethodCallWrapped

        private boolean isChainedMethodCallWrapped()
        If this is the first chained method call which was moved to the next line.
        Returns:
        true if chained class are wrapped
      • getFirstAst

        private static DetailAST getFirstAst​(DetailAST ast)
        Get the first AST of the specified method call.
        Parameters:
        ast - the method call
        Returns:
        the first AST of the specified method call
      • getMethodIdentAst

        private DetailAST getMethodIdentAst()
        Returns method or constructor name. For foo(arg) it is `foo`, for foo.bar(arg) it is `bar` for super(arg) it is 'super'.
        Returns:
        TokenTypes.IDENT node for a method call, TokenTypes.SUPER_CTOR_CALL otherwise.
      • getCallLastNode

        private static DetailAST getCallLastNode​(DetailAST firstNode)
        Returns method or constructor call right paren.
        Parameters:
        firstNode - call ast(TokenTypes.METHOD_CALL|TokenTypes.CTOR_CALL|TokenTypes.SUPER_CTOR_CALL)
        Returns:
        ast node containing right paren for specified method or constructor call. If method calls are chained returns right paren for last call.