Class ChunkerAssign

All Implemented Interfaces:
HasScope, Node
Direct Known Subclasses:
ChunkerTypedAssign

public class ChunkerAssign
extends ScopedNode
  • Constructor Details

    • ChunkerAssign

      public ChunkerAssign​(int id)
    • ChunkerAssign

      public ChunkerAssign​(Chunker p, int id)
  • Method Details

    • jjtAccept

      public Object jjtAccept​(ChunkerVisitor visitor, Object data)
      Accept the visitor.
      Specified by:
      jjtAccept in interface Node
      Overrides:
      jjtAccept in class SimpleNode
    • getValue

      public Node getValue()
    • setValue

      public void setValue​(Node value)
    • 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.
      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.
    • assignToken

      public Token assignToken()
    • getName

      public String getName()
    • jjtSetLastToken

      public void jjtSetLastToken​(Token token)
      Specified by:
      jjtSetLastToken in interface Node
      Overrides:
      jjtSetLastToken in class SimpleNode