1 #ifndef MATH_BeginBlock_H
2 #define MATH_BeginBlock_H
27 SP::MATH_EndBlock mEndBlock;
53 static inline SP::MATH_BeginBlock
New() {
82 return ( ( (bc==
'{') && (ec==
'}') ) ||
83 ( (bc==
'(') && (ec==
')') ) ||
84 ( (bc==
'[') && (ec==
']') )
98 return (mEndBlock.get()!=
null);
111 return arg->evaluate(action,env,var);
This class decribes a variable class for evaluation.
Definition: MATH_Variable.h:16
virtual const char & getBlockString() const
get the block expression character
Definition: MATH_Block.h:64
static SP::MATH_BeginBlock New()
create a node expression
Definition: MATH_BeginBlock.h:53
This class is the base class of a math expression.
Definition: MATH_Expression.h:24
SPC::MATH_ChildExpression getArgument(const int &i) const
get argument at index i for reading
Definition: MATH_ParentExpression.h:124
This class decribes an operator with a name.
Definition: MATH_Operator.h:15
virtual int evaluate(const tFlag &action, MATH_Environment &env, MATH_Variable &var) const
void evaluate the expression
Definition: MATH_BeginBlock.h:108
#define tBoolean
Definition: types.h:35
#define null
Definition: types.h:13
virtual SP::MATH_NodeExpression newInstance() const
create a node expression
Definition: MATH_BeginBlock.h:61
This class decribes a block.
Definition: MATH_Block.h:18
virtual MATH_ChildExpression * insertInTree(MATH_Expression *treeNode, MATH_Environment &symbols, tString &expr)
insert the node This in tree & erase the This corresponding character in expr
Definition: MATH_BeginBlock.cpp:31
This class is a children of a parent expression.
Definition: MATH_ChildExpression.h:23
MATH_BeginBlock(void)
create
Definition: MATH_BeginBlock.cpp:8
virtual tBoolean isCompatible(const MATH_Block &eb) const
test if the begin block This is compatible with the end block
Definition: MATH_BeginBlock.h:79
#define tString
Definition: types.h:36
DEFINE_SPTR(MATH_EndBlock)
Definition: MATH_EndBlock.h:17
tBoolean isClosed() const
return true if the begin block is closed
Definition: MATH_BeginBlock.h:97
This class decribes an environment class.
Definition: MATH_Environment.h:14
void setEndBlock(SP::MATH_EndBlock eb)
set the end block
Definition: MATH_BeginBlock.h:91
virtual ~MATH_BeginBlock(void)
destroy
Definition: MATH_BeginBlock.cpp:13
This class decribes a begin block.
Definition: MATH_BeginBlock.h:21
class Free introduced for deleting a smart pointer
Definition: CORE_Object.h:106
#define tFlag
Definition: types.h:14