Class EmptyTerminalNode

All Implemented Interfaces:
MoveCheckable, TreeMember, ParseTree, SyntaxTree, TerminalNode, Tree

public class EmptyTerminalNode extends ExtendedTerminalNode implements MoveCheckable
The empty terminal node is a placeholder in parse tree children lists in order to prevent exceptions from being thrown because the parse tree walker expects child lists not to change length during iteration. The print visitor ignores it during printing because it's token is null.
  • Constructor Details

    • EmptyTerminalNode

      public EmptyTerminalNode(TreeMember previousNode)
      Creates a new empty terminal node with a given previous node.
      Parameters:
      previousNode - The previous node to keep a reference to
  • Method Details

    • replacesNode

      public boolean replacesNode(ParseTree node)
      Description copied from interface: MoveCheckable
      Checks if the implementing object was inserted into the tree to replace the given node. This is used to check if an empty terminal node replaced this node in the parse tree.
      Specified by:
      replacesNode in interface MoveCheckable
      Parameters:
      node - The node to check for having been replaced by this node
      Returns:
      true if this node replaced the given node