Public Member Functions
rve_interface_gen.antlr3.tree.TreeNodeStream Class Reference
Inheritance diagram for rve_interface_gen.antlr3.tree.TreeNodeStream:
Inheritance graph
[legend]

List of all members.

Public Member Functions

def get
def getTokenStream
def getTreeAdaptor
def getTreeSource
def LT
def replaceChildren
def setUniqueNavigationNodes
def toString

Detailed Description

@brief A stream of tree nodes

It accessing nodes from a tree of some kind.

Definition at line 1634 of file tree.py.


Member Function Documentation

Get a tree node at an absolute index i; 0..n-1.
If you don't want to buffer up nodes, then this method makes no
sense for you.

Reimplemented in rve_interface_gen.antlr3.tree.CommonTreeNodeStream.

Definition at line 1644 of file tree.py.

If the tree associated with this stream was created from a TokenStream,
you can specify it here.  Used to do rule $text attribute in tree
parser.  Optional unless you use tree parser rule text attribute
or output=template and rewrite=true options.

Reimplemented in rve_interface_gen.antlr3.tree.CommonTreeNodeStream.

Definition at line 1679 of file tree.py.

What adaptor can tell me how to interpret/navigate nodes and
trees.  E.g., get text of a node.

Reimplemented in rve_interface_gen.antlr3.tree.CommonTreeNodeStream.

Definition at line 1690 of file tree.py.

Where is this stream pulling nodes from?  This is not the name, but
the object that provides node objects.

Reimplemented in rve_interface_gen.antlr3.tree.CommonTreeNodeStream.

Definition at line 1670 of file tree.py.

Get tree node at current input pointer + i ahead where i=1 is next node.
i<0 indicates nodes in the past.  So LT(-1) is previous node, but
implementations are not required to provide results for k < -1.
LT(0) is undefined.  For i>=n, return null.
Return null for LT(0) and any index that results in an absolute address
that is negative.

This is analogus to the LT() method of the TokenStream, but this
returns a tree node instead of a token.  Makes code gen identical
for both parser and tree grammars. :)

Reimplemented in rve_interface_gen.antlr3.tree.CommonTreeNodeStream.

Definition at line 1653 of file tree.py.

def rve_interface_gen.antlr3.tree.TreeNodeStream.replaceChildren (   self,
  parent,
  startChildIndex,
  stopChildIndex,
  t 
)
Replace from start to stop child index of parent with t, which might
be a list.  Number of children may be different
after this call.  The stream is notified because it is walking the
tree and might need to know you are monkeying with the underlying
tree.  Also, it might be able to modify the node stream to avoid
restreaming for future phases.

If parent is null, don't do anything; must be at root of overall tree.
Can't replace whatever points to the parent externally.  Do nothing.

Reimplemented in rve_interface_gen.antlr3.tree.CommonTreeNodeStream.

Definition at line 1724 of file tree.py.

def rve_interface_gen.antlr3.tree.TreeNodeStream.setUniqueNavigationNodes (   self,
  uniqueNavigationNodes 
)
As we flatten the tree, we use UP, DOWN nodes to represent
the tree structure.  When debugging we need unique nodes
so we have to instantiate new ones.  When doing normal tree
parsing, it's slow and a waste of memory to create unique
navigation nodes.  Default should be false;

Reimplemented in rve_interface_gen.antlr3.tree.CommonTreeNodeStream.

Definition at line 1699 of file tree.py.

def rve_interface_gen.antlr3.tree.TreeNodeStream.toString (   self,
  start,
  stop 
)
Return the text of all nodes from start to stop, inclusive.
If the stream does not buffer all the nodes then it can still
walk recursively from start until stop.  You can always return
null or "" too, but users should not access $ruleLabel.text in
an action of course in that case.

Reimplemented in rve_interface_gen.antlr3.tree.CommonTreeNodeStream.

Definition at line 1711 of file tree.py.


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


rve_interface_gen
Author(s): Josh Faust
autogenerated on Wed Dec 11 2013 14:31:00