ptolemy.data.expr
Class ParseTreeWriter
java.lang.Object
ptolemy.data.expr.AbstractParseTreeVisitor
ptolemy.data.expr.ParseTreeWriter
- All Implemented Interfaces:
- ParseTreeVisitor
public class ParseTreeWriter
- extends AbstractParseTreeVisitor
This class implements a visitor that writes parse trees in the
expression language.
- Since:
- Ptolemy II 2.1
- Version:
- $Id: ParseTreeWriter.java 57046 2010-01-27 23:35:53Z cxh $
- Author:
- Steve Neuendorffer
- See Also:
ASTPtRootNode
- Accepted Rating:
- Proposed Rating:
|
Field Summary |
protected java.io.PrintWriter |
_writer
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_writer
protected java.io.PrintWriter _writer
ParseTreeWriter
public ParseTreeWriter()
displayParseTree
public void displayParseTree(ASTPtRootNode root)
parseTreeToExpression
public java.lang.String parseTreeToExpression(ASTPtRootNode root)
throws IllegalActionException
- Produce an expression for this parse tree.
- Parameters:
root - The root of the parse tree.
- Returns:
- The expression.
- Throws:
IllegalActionException - If the parse tree has an error.
printParseTree
public java.lang.String printParseTree(ASTPtRootNode root)
- Return an expression for this parse tree, or a description
of the exception if an exception occurs.
- Parameters:
root - The root of the parse tree.
- Returns:
- The expression.
visitArrayConstructNode
public void visitArrayConstructNode(ASTPtArrayConstructNode node)
throws IllegalActionException
- Specified by:
visitArrayConstructNode in interface ParseTreeVisitor- Overrides:
visitArrayConstructNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitBitwiseNode
public void visitBitwiseNode(ASTPtBitwiseNode node)
throws IllegalActionException
- Specified by:
visitBitwiseNode in interface ParseTreeVisitor- Overrides:
visitBitwiseNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitFunctionApplicationNode
public void visitFunctionApplicationNode(ASTPtFunctionApplicationNode node)
throws IllegalActionException
- Specified by:
visitFunctionApplicationNode in interface ParseTreeVisitor- Overrides:
visitFunctionApplicationNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitFunctionDefinitionNode
public void visitFunctionDefinitionNode(ASTPtFunctionDefinitionNode node)
throws IllegalActionException
- Specified by:
visitFunctionDefinitionNode in interface ParseTreeVisitor- Overrides:
visitFunctionDefinitionNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitFunctionalIfNode
public void visitFunctionalIfNode(ASTPtFunctionalIfNode node)
throws IllegalActionException
- Specified by:
visitFunctionalIfNode in interface ParseTreeVisitor- Overrides:
visitFunctionalIfNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitLeafNode
public void visitLeafNode(ASTPtLeafNode node)
throws IllegalActionException
- Specified by:
visitLeafNode in interface ParseTreeVisitor- Overrides:
visitLeafNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitLogicalNode
public void visitLogicalNode(ASTPtLogicalNode node)
throws IllegalActionException
- Specified by:
visitLogicalNode in interface ParseTreeVisitor- Overrides:
visitLogicalNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitMatrixConstructNode
public void visitMatrixConstructNode(ASTPtMatrixConstructNode node)
throws IllegalActionException
- Specified by:
visitMatrixConstructNode in interface ParseTreeVisitor- Overrides:
visitMatrixConstructNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitMethodCallNode
public void visitMethodCallNode(ASTPtMethodCallNode node)
throws IllegalActionException
- Specified by:
visitMethodCallNode in interface ParseTreeVisitor- Overrides:
visitMethodCallNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitPowerNode
public void visitPowerNode(ASTPtPowerNode node)
throws IllegalActionException
- Specified by:
visitPowerNode in interface ParseTreeVisitor- Overrides:
visitPowerNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitProductNode
public void visitProductNode(ASTPtProductNode node)
throws IllegalActionException
- Specified by:
visitProductNode in interface ParseTreeVisitor- Overrides:
visitProductNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitRecordConstructNode
public void visitRecordConstructNode(ASTPtRecordConstructNode node)
throws IllegalActionException
- Specified by:
visitRecordConstructNode in interface ParseTreeVisitor- Overrides:
visitRecordConstructNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitRelationalNode
public void visitRelationalNode(ASTPtRelationalNode node)
throws IllegalActionException
- Specified by:
visitRelationalNode in interface ParseTreeVisitor- Overrides:
visitRelationalNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitShiftNode
public void visitShiftNode(ASTPtShiftNode node)
throws IllegalActionException
- Specified by:
visitShiftNode in interface ParseTreeVisitor- Overrides:
visitShiftNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitSumNode
public void visitSumNode(ASTPtSumNode node)
throws IllegalActionException
- Specified by:
visitSumNode in interface ParseTreeVisitor- Overrides:
visitSumNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
visitUnaryNode
public void visitUnaryNode(ASTPtUnaryNode node)
throws IllegalActionException
- Specified by:
visitUnaryNode in interface ParseTreeVisitor- Overrides:
visitUnaryNode in class AbstractParseTreeVisitor
- Throws:
IllegalActionException
_printChild
private void _printChild(ASTPtRootNode node,
int index)
throws IllegalActionException
- Throws:
IllegalActionException
_printChildrenSeparated
private void _printChildrenSeparated(ASTPtRootNode node,
java.util.List separatorList)
throws IllegalActionException
- Throws:
IllegalActionException
_printChildrenSeparated
private void _printChildrenSeparated(ASTPtRootNode node,
java.lang.String string)
throws IllegalActionException
- Throws:
IllegalActionException