ls1-MarDyn
ls1-MarDyn molecular dynamics code
Public Member Functions | Protected Attributes | List of all members
Expression::Node Class Referenceabstract
Inheritance diagram for Expression::Node:
Expression::NodeConstant Expression::NodeFunction Expression::NodeOperation2 Expression::NodeVariable Expression::NodeFunctionVarSet

Public Member Functions

 Node (Node *child1=NULL, Node *child2=NULL, Node *parent=NULL, short priority=0)
 
void setChild1 (Node *child1)
 
NodegetChild1 () const
 
void setChild2 (Node *child2)
 
NodegetChild2 () const
 
void setParent (Node *parent)
 
NodegetParent () const
 
virtual Tvaltype valueType () const =0
 
bool isInt () const
 
bool isFloat () const
 
virtual Value evaluate () const =0
 
virtual Tfloat evaluateFloat () const
 
virtual Tint evaluateInt () const
 
virtual void write (std::ostream &ostrm) const =0
 
 operator std::string () const
 
void write () const
 
void traverse (std::list< const Node * > &nodelist, enum Etraversetype traversetype=traversetypePOSTFIX) const
 
void writeSubExpr (std::ostream &ostrm=std::cout, enum Etraversetype traversetype=traversetypePOSTFIX, char sep=' ') const
 

Protected Attributes

Node_children [2]
 
Node_parent
 
short _priority
 

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