gov.llnl.babel.parsers.sidl2
Class ParseTree2ASTVisitor

java.lang.Object
  extended by gov.llnl.babel.parsers.sidl2.ParseTree2ASTVisitor
All Implemented Interfaces:
SIDLParserVisitor

public class ParseTree2ASTVisitor
extends java.lang.Object
implements SIDLParserVisitor

This class turns the JJTree/JavaCC generated parse tree into a bona fide AST. The output AST can then be traversed for syntax checking, cloning, modification, and (eventually) better code generators.


Field Summary
protected  java.util.LinkedList d_attrs
           
protected  MsgList d_msgs
           
protected  java.util.Stack d_postfixStack
           
protected  java.util.Stack d_prefixStack
           
 
Constructor Summary
ParseTree2ASTVisitor(MsgList msgs)
           
 
Method Summary
protected  void checkAttrs(java.lang.String typeName, IAttributable node, java.lang.Object data, java.lang.String[] legal_attrs)
           
protected  java.lang.String resolveDoc(ParseTreeNode node)
          Resolve the doc string from the special tokens preceding the node
 java.lang.Object visit(ParseTreeNode src, java.lang.Object data)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

d_prefixStack

protected java.util.Stack d_prefixStack

d_postfixStack

protected java.util.Stack d_postfixStack

d_attrs

protected java.util.LinkedList d_attrs

d_msgs

protected MsgList d_msgs
Constructor Detail

ParseTree2ASTVisitor

public ParseTree2ASTVisitor(MsgList msgs)
Method Detail

checkAttrs

protected void checkAttrs(java.lang.String typeName,
                          IAttributable node,
                          java.lang.Object data,
                          java.lang.String[] legal_attrs)

visit

public java.lang.Object visit(ParseTreeNode src,
                              java.lang.Object data)
Specified by:
visit in interface SIDLParserVisitor

resolveDoc

protected java.lang.String resolveDoc(ParseTreeNode node)
Resolve the doc string from the special tokens preceding the node

Parameters:
node -
Returns: