amath
1.8.5
Simple command line calculator
|
#include <operators.h>
Public Member Functions | |
NumericOperator (ExpressionNode *left, ExpressionNode *right) | |
~NumericOperator () | |
SyntaxNode * | GetNext () |
char * | GetText () |
void | Attach (SyntaxNode *node) |
void | Detach (SyntaxNode *node) |
void | Replace (SyntaxNode *n, SyntaxNode *x) |
Public Member Functions inherited from ExpressionNode | |
ExpressionNode () | |
ExpressionNode (Number *value) | |
virtual | ~ExpressionNode () |
NodeType | GetNodeType () |
virtual bool | IsSilent () |
virtual Number * | Evaluate ()=0 |
virtual int | GetPrecedence ()=0 |
char * | GetTextCode () |
char * | Execute () |
Public Member Functions inherited from SyntaxNode | |
SyntaxNode () | |
virtual | ~SyntaxNode () |
void | SetFirstNode () |
bool | GetFirstNode () const |
SyntaxNode * | GetParent () const |
void | SetParent (SyntaxNode *node) |
virtual ReductionType | GetReductionType () |
virtual void | ResetIterator () |
Protected Attributes | |
ExpressionNode * | left |
ExpressionNode * | right |
Protected Attributes inherited from ExpressionNode | |
Number * | result |
Protected Attributes inherited from SyntaxNode | |
CharBuffer * | output |
SyntaxNode * | parent |
SyntaxNode * | iterator |
bool | leftBottom |
Additional Inherited Members | |
Protected Member Functions inherited from ExpressionNode | |
virtual char * | GetNodeText ()=0 |
Definition at line 106 of file operators.h.
NumericOperator::NumericOperator | ( | ExpressionNode * | left, |
ExpressionNode * | right | ||
) |
Definition at line 308 of file operators.cpp.
References ExpressionNode::ExpressionNode(), left, and right.
Referenced by AdditionNode::AdditionNode(), AssignmentNode::AssignmentNode(), DivisionNode::DivisionNode(), MultiplicationNode::MultiplicationNode(), PowerNode::PowerNode(), and SubtractionNode::SubtractionNode().
NumericOperator::~NumericOperator | ( | ) |
Definition at line 313 of file operators.cpp.
|
virtual |
Implements SyntaxNode.
Definition at line 379 of file operators.cpp.
References left, right, and SyntaxNode::SetParent().
|
virtual |
|
virtual |
Implements SyntaxNode.
Definition at line 362 of file operators.cpp.
References SyntaxNode::iterator, left, and right.
|
virtual |
Implements ExpressionNode.
Definition at line 326 of file operators.cpp.
References CharBuffer::Append(), CharBuffer::Empty(), CharBuffer::EnsureSize(), ExpressionNode::GetNodeText(), ExpressionNode::GetPrecedence(), CharBuffer::GetString(), ExpressionNode::GetText(), left, SyntaxNode::output, right, and StrLen().
|
virtual |
Implements SyntaxNode.
Definition at line 405 of file operators.cpp.
References SyntaxNode::iterator, left, and right.
|
protected |
Definition at line 119 of file operators.h.
Referenced by Attach(), Detach(), AdditionNode::Evaluate(), SubtractionNode::Evaluate(), MultiplicationNode::Evaluate(), DivisionNode::Evaluate(), PowerNode::Evaluate(), GetNext(), GetText(), NumericOperator(), Replace(), and ~NumericOperator().
|
protected |
Definition at line 120 of file operators.h.
Referenced by Attach(), Detach(), AdditionNode::Evaluate(), SubtractionNode::Evaluate(), MultiplicationNode::Evaluate(), DivisionNode::Evaluate(), PowerNode::Evaluate(), GetNext(), GetText(), NumericOperator(), Replace(), and ~NumericOperator().