Class SimpleNode

    • Constructor Detail

      • SimpleNode

        public SimpleNode​(int id)
    • Method Detail

      • jjtOpen

        public void jjtOpen()
        Description copied from interface: Node
        This method is called after the node has been made the current node. It indicates that child nodes can now be added to it.
        Specified by:
        jjtOpen in interface Node
      • jjtClose

        public void jjtClose()
        Description copied from interface: Node
        This method is called after all the child nodes have been added.
        Specified by:
        jjtClose in interface Node
      • jjtSetParent

        public void jjtSetParent​(Node n)
        Description copied from interface: Node
        This pair of methods are used to inform the node of its parent.
        Specified by:
        jjtSetParent in interface Node
      • 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
      • jjtAppendChild

        public void jjtAppendChild​(Node n)
        Description copied from interface: Node
        Adds the supplied node as the last child node to this node.
        Specified by:
        jjtAppendChild in interface Node
      • jjtInsertChild

        public void jjtInsertChild​(Node n,
                                   int i)
        Description copied from interface: Node
        Adds the supplied node as the i'th child node to this node.
        Specified by:
        jjtInsertChild in interface Node
      • jjtReplaceChild

        public void jjtReplaceChild​(Node oldNode,
                                    Node newNode)
        Description copied from interface: Node
        Replaces a child node with a new node.
        Specified by:
        jjtReplaceChild in interface Node
      • jjtReplaceWith

        public void jjtReplaceWith​(Node newNode)
        Replaces this node with the supplied one in the AST.
        Parameters:
        newNode - The replacement node.
      • jjtGetChildren

        public List<Node> jjtGetChildren()
      • jjtGetChild

        public Node jjtGetChild​(int i)
        Description copied from interface: Node
        This method returns a child node. The children are numbered from zero, left to right.
        Specified by:
        jjtGetChild in interface Node
      • jjtGetChild

        public <T extends Node> T jjtGetChild​(Class<T> type)
        Gets the (first) child of this node that is of the specific type.
        Parameters:
        type - The type of the child node that should be returned.
        Returns:
        The (first) child node of the specified type, or null if no such child node was found.
      • jjtGetChildren

        public <T extends NodeList<T> jjtGetChildren​(Class<T> type)
      • jjtGetNumChildren

        public int jjtGetNumChildren()
        Description copied from interface: Node
        Return the number of children the node has.
        Specified by:
        jjtGetNumChildren in interface Node
      • dump

        public void dump​(String prefix,
                         Appendable out)
                  throws IOException
        Writes a tree-like representation of this node and all of its subnodes (recursively) to the supplied Appendable.
        Throws:
        IOException
      • dump

        public String dump​(String prefix)
        Writes a tree-like representation of this node and all of its subnodes (recursively) and returns it as a string.
      • isScopeChange

        public boolean isScopeChange()
        Check if this AST node constitutes a variable scope change.
        Returns:
        the isScopeChange
      • setScopeChange

        public void setScopeChange​(boolean isScopeChange)
        Parameters:
        isScopeChange - the isScopeChange to set