类 CommonTree

  • 所有已实现的接口:
    Tree
    直接已知子类:
    CommonErrorNode, GrammarAST, TreeWizard.TreePattern

    public class CommonTree
    extends BaseTree
    A tree node that is wrapper for a Token object. After 3.0 release while building tree rewrite stuff, it became clear that computing parent and child index is very difficult and cumbersome. Better to spend the space in every tree node. If you don't want these extra fields, it's easy to cut them out in your own BaseTree subclass.
    • 字段详细资料

      • token

        public Token token
        A single token is the payload
      • startIndex

        protected int startIndex
        What token indexes bracket all tokens associated with this node and below?
      • stopIndex

        protected int stopIndex
        What token indexes bracket all tokens associated with this node and below?
      • parent

        public CommonTree parent
        Who is the parent node of this node; if null, implies node is root
      • childIndex

        public int childIndex
        What index is this node in the child list? Range: 0..n-1
    • 构造器详细资料

      • CommonTree

        public CommonTree()
      • CommonTree

        public CommonTree​(CommonTree node)
      • CommonTree

        public CommonTree​(Token t)
    • 方法详细资料

      • getToken

        public Token getToken()
      • dupNode

        public Tree dupNode()
      • isNil

        public boolean isNil()
        从接口复制的说明: Tree
        Indicates the node is a nil node but may still have children, meaning the tree is a flat list.
        指定者:
        isNil 在接口中 Tree
        覆盖:
        isNil 在类中 BaseTree
      • getType

        public int getType()
        从接口复制的说明: Tree
        Return a token type; needed for tree parsing
      • getText

        public java.lang.String getText()
      • getLine

        public int getLine()
        从接口复制的说明: Tree
        In case we don't have a token payload, what is the line for errors?
        指定者:
        getLine 在接口中 Tree
        覆盖:
        getLine 在类中 BaseTree
      • getTokenStartIndex

        public int getTokenStartIndex()
        从接口复制的说明: Tree
        What is the smallest token index (indexing from 0) for this node and its children?
      • setTokenStartIndex

        public void setTokenStartIndex​(int index)
      • getTokenStopIndex

        public int getTokenStopIndex()
        从接口复制的说明: Tree
        What is the largest token index (indexing from 0) for this node and its children?
      • setTokenStopIndex

        public void setTokenStopIndex​(int index)
      • setUnknownTokenBoundaries

        public void setUnknownTokenBoundaries()
        For every node in this subtree, make sure it's start/stop token's are set. Walk depth first, visit bottom up. Only updates nodes with at least one token index < 0.
      • toString

        public java.lang.String toString()
        从类复制的说明: BaseTree
        Override to say how a node (not a tree) should look as text
        指定者:
        toString 在接口中 Tree
        指定者:
        toString 在类中 BaseTree