Antlr.Runtime.Tree.CommonTree Class Reference

A tree node that is wrapper for a Token object. More...

Inheritance diagram for Antlr.Runtime.Tree.CommonTree:

Inheritance graph
[legend]
Collaboration diagram for Antlr.Runtime.Tree.CommonTree:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 CommonTree ()
 CommonTree (CommonTree node)
 CommonTree (IToken t)
override ITree DupNode ()
override string ToString ()
 Force base classes override and say how a node (not a tree) should look as text.

Public Attributes

int startIndex = -1
 What token indexes bracket all tokens associated with this node and below?
int stopIndex = -1
CommonTree parent
 Who is the parent node of this node; if null, implies node is root.
int childIndex = -1
 What index is this node in the child list? Range: 0..n-1.

Protected Attributes

IToken token
 A single token is the payload.

Properties

virtual IToken Token [get]
override bool IsNil [get]
 Indicates the node is a nil node but may still have children, meaning the tree is a flat list.
override int Type [get]
 Return a token type; needed for tree parsing.
override string Text [get]
override int Line [get]
 In case we don't have a token payload, what is the line for errors?
override int CharPositionInLine [get]
override int TokenStartIndex [get, set]
 What is the smallest token index (indexing from 0) for this node and its children?
override int TokenStopIndex [get, set]
 What is the largest token index (indexing from 0) for this node and its children?
override int ChildIndex [get, set]
 BaseTree doesn't track child indexes.
override ITree Parent [get, set]
 BaseTree doesn't track parent pointers.


Detailed Description

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.

Definition at line 48 of file CommonTree.cs.


Constructor & Destructor Documentation

Antlr.Runtime.Tree.CommonTree.CommonTree (  ) 

Definition at line 50 of file CommonTree.cs.

Antlr.Runtime.Tree.CommonTree.CommonTree ( CommonTree  node  ) 

Definition at line 54 of file CommonTree.cs.

Antlr.Runtime.Tree.CommonTree.CommonTree ( IToken  t  ) 

Definition at line 62 of file CommonTree.cs.


Member Function Documentation

override ITree Antlr.Runtime.Tree.CommonTree.DupNode (  )  [virtual]

Implements Antlr.Runtime.Tree.BaseTree.

Definition at line 188 of file CommonTree.cs.

override string Antlr.Runtime.Tree.CommonTree.ToString (  )  [virtual]

Force base classes override and say how a node (not a tree) should look as text.

Implements Antlr.Runtime.Tree.BaseTree.

Reimplemented in Antlr.Runtime.CommonErrorNode, and Antlr.Runtime.Tree.TreeWizard.TreePattern.

Definition at line 193 of file CommonTree.cs.


Member Data Documentation

What token indexes bracket all tokens associated with this node and below?

Definition at line 177 of file CommonTree.cs.

Definition at line 177 of file CommonTree.cs.

A single token is the payload.

Definition at line 180 of file CommonTree.cs.

Who is the parent node of this node; if null, implies node is root.

Definition at line 183 of file CommonTree.cs.

What index is this node in the child list? Range: 0..n-1.

Definition at line 186 of file CommonTree.cs.


Property Documentation

virtual IToken Antlr.Runtime.Tree.CommonTree.Token [get]

Definition at line 68 of file CommonTree.cs.

override bool Antlr.Runtime.Tree.CommonTree.IsNil [get]

Indicates the node is a nil node but may still have children, meaning the tree is a flat list.

Reimplemented from Antlr.Runtime.Tree.BaseTree.

Reimplemented in Antlr.Runtime.CommonErrorNode.

Definition at line 73 of file CommonTree.cs.

override int Antlr.Runtime.Tree.CommonTree.Type [get]

Return a token type; needed for tree parsing.

Reimplemented from Antlr.Runtime.Tree.BaseTree.

Reimplemented in Antlr.Runtime.CommonErrorNode.

Definition at line 78 of file CommonTree.cs.

override string Antlr.Runtime.Tree.CommonTree.Text [get]

Reimplemented from Antlr.Runtime.Tree.BaseTree.

Reimplemented in Antlr.Runtime.CommonErrorNode.

Definition at line 90 of file CommonTree.cs.

override int Antlr.Runtime.Tree.CommonTree.Line [get]

In case we don't have a token payload, what is the line for errors?

Reimplemented from Antlr.Runtime.Tree.BaseTree.

Definition at line 102 of file CommonTree.cs.

override int Antlr.Runtime.Tree.CommonTree.CharPositionInLine [get]

Reimplemented from Antlr.Runtime.Tree.BaseTree.

Definition at line 118 of file CommonTree.cs.

override int Antlr.Runtime.Tree.CommonTree.TokenStartIndex [get, set]

What is the smallest token index (indexing from 0) for this node and its children?

Reimplemented from Antlr.Runtime.Tree.BaseTree.

Definition at line 134 of file CommonTree.cs.

override int Antlr.Runtime.Tree.CommonTree.TokenStopIndex [get, set]

What is the largest token index (indexing from 0) for this node and its children?

Reimplemented from Antlr.Runtime.Tree.BaseTree.

Definition at line 148 of file CommonTree.cs.

override int Antlr.Runtime.Tree.CommonTree.ChildIndex [get, set]

BaseTree doesn't track child indexes.

Reimplemented from Antlr.Runtime.Tree.BaseTree.

Definition at line 162 of file CommonTree.cs.

override ITree Antlr.Runtime.Tree.CommonTree.Parent [get, set]

BaseTree doesn't track parent pointers.

Reimplemented from Antlr.Runtime.Tree.BaseTree.

Definition at line 168 of file CommonTree.cs.


The documentation for this class was generated from the following file:

Generated on Wed Oct 1 14:13:33 2008 for ANTLR API by  doxygen 1.5.5