Class ChunkerInvoke

    • Constructor Detail

      • ChunkerInvoke

        public ChunkerInvoke​(int id)
      • ChunkerInvoke

        public ChunkerInvoke​(Chunker p,
                             int id)
    • Method Detail

      • getName

        public java.lang.String getName()
        Specified by:
        getName in interface IsScope
      • setName

        public void setName​(java.lang.String name)
      • startArguments

        public void startArguments()
      • endArguments

        public void endArguments()
      • jjtAddChild

        public void jjtAddChild​(Node n,
                                int i)
        Description copied from interface: Node
        This method tells the node to add its argument to the node's list of children.
        Specified by:
        jjtAddChild in interface Node
        Overrides:
        jjtAddChild in class SimpleNode
      • indexOfArgument

        public int indexOfArgument​(Node node)
      • isCursorInArguments

        public boolean isCursorInArguments​(int offset)
      • isCursorOnName

        public boolean isCursorOnName​(int offset)
      • isAutocompleteTerminal

        public boolean isAutocompleteTerminal()
        Description copied from interface: Node
        Overridden manually for nodes who can "have a cursor on them" with respect to autocomplete. If any part of an ast node collects tokens that are "leaf nodes" (i.e. there are cursor positions where your ast node will be the most derived child found), then it is a candidate to be a terminal autocomplete source. When encountering whitespace or . or , we might search left or right for interesting nodes, and those ast nodes who are autocomplete terminal will be preferred over their children. The normal search algorithm is a standard binary tree search, where the next-leftmost|rightmost leaf node is transversed. When an `isAutocompleteTerminal() == true` node is found, however, we stop there to continue searches.
        Specified by:
        isAutocompleteTerminal in interface Node
        Returns:
        true for nodes that the visitor in ChunkerCompleter will visit and generate results. This is not needed for always-terminal nodes, like ChunkerNum or ChunkerIdent, but is needed by terminal-nodes-with-children, like ChunkerInvoke or ChunkerNew.