MathParser\Interpreting\TreePrinter Class Reference

Simple string representation of an AST. More...

Inheritance diagram for MathParser\Interpreting\TreePrinter:
MathParser\Interpreting\Visitors\Visitor

Public Member Functions

 visitExpressionNode (ExpressionNode $node)
 Print an ExpressionNode. More...
 
 visitNumberNode (NumberNode $node)
 Print a NumberNode. More...
 
 visitIntegerNode (IntegerNode $node)
 Interface function for visiting IntegerNodes. More...
 
 visitRationalNode (RationalNode $node)
 Interface function for visiting RationalNodes. More...
 
 visitVariableNode (VariableNode $node)
 Print a VariableNode. More...
 
 visitFunctionNode (FunctionNode $node)
 Print a FunctionNode. More...
 
 visitConstantNode (ConstantNode $node)
 Print a ConstantNode. More...
 

Detailed Description

Simple string representation of an AST.

Probably most useful for debugging purposes.

Implementation of a Visitor, transforming an AST into a string representation of the tree.

Example:

$parser = new StdMathParser();
$f = $parser->parse('exp(2x)+xy');
printer = new TreePrinter();
result = $f->accept($printer); // Generates "(+ (exp (* 2 x)) (* x y))"

Member Function Documentation

MathParser\Interpreting\TreePrinter::visitConstantNode ( ConstantNode  $node)

Print a ConstantNode.

Parameters
ConstantNode$node

Implements MathParser\Interpreting\Visitors\Visitor.

MathParser\Interpreting\TreePrinter::visitExpressionNode ( ExpressionNode  $node)

Print an ExpressionNode.

Parameters
ExpressionNode$node

Implements MathParser\Interpreting\Visitors\Visitor.

MathParser\Interpreting\TreePrinter::visitFunctionNode ( FunctionNode  $node)

Print a FunctionNode.

Parameters
FunctionNode$node

Implements MathParser\Interpreting\Visitors\Visitor.

MathParser\Interpreting\TreePrinter::visitIntegerNode ( IntegerNode  $node)

Interface function for visiting IntegerNodes.

Parameters
IntegerNode$nodeNode to visit.

Implements MathParser\Interpreting\Visitors\Visitor.

MathParser\Interpreting\TreePrinter::visitNumberNode ( NumberNode  $node)

Print a NumberNode.

Parameters
NumerNode$node

Implements MathParser\Interpreting\Visitors\Visitor.

MathParser\Interpreting\TreePrinter::visitRationalNode ( RationalNode  $node)

Interface function for visiting RationalNodes.

Parameters
RationalNode$nodeNode to visit.

Implements MathParser\Interpreting\Visitors\Visitor.

MathParser\Interpreting\TreePrinter::visitVariableNode ( VariableNode  $node)

Print a VariableNode.

Parameters
VariableNode$node

Implements MathParser\Interpreting\Visitors\Visitor.


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