Belle II Software development
|
AbstractExpressionNode Superclass for all nodes which host expressions. More...
#include <AbstractNodes.h>
Public Types | |
typedef AVariableManager::Object | Object |
Template argument dependent Particle type definition. | |
typedef AVariableManager::Var | Var |
Template argument dependent Variable type definition. | |
Public Member Functions | |
virtual AVariableManager::VarVariant | evaluate (const Object *p) const =0 |
pure virtual evaluate function, has to be overridden in derived class | |
virtual void | print () const =0 |
pure virtual print function, has to be overridden in derived class | |
virtual std::string | decompile () const =0 |
pure virtual decompile function, has to be overridden in derived class | |
virtual | ~AbstractExpressionNode () |
Virtual destructor. | |
AbstractExpressionNode Superclass for all nodes which host expressions.
Every child class must override the evaluate member, which returns the value of its expression as a variant<double, int, bool>.
Definition at line 66 of file AbstractNodes.h.
typedef AVariableManager::Object Object |
Template argument dependent Particle type definition.
Definition at line 71 of file AbstractNodes.h.
typedef AVariableManager::Var Var |
Template argument dependent Variable type definition.
Definition at line 75 of file AbstractNodes.h.
|
inlinevirtual |
|
pure virtual |
pure virtual decompile function, has to be overridden in derived class
Implemented in UnaryExpressionNode< AVariableManager >, BinaryExpressionNode< AVariableManager >, DataNode< AVariableManager, T >, IdentifierNode< AVariableManager >, and FunctionNode< AVariableManager >.
|
pure virtual |
pure virtual evaluate function, has to be overridden in derived class
Implemented in UnaryExpressionNode< AVariableManager >, BinaryExpressionNode< AVariableManager >, DataNode< AVariableManager, T >, IdentifierNode< AVariableManager >, and FunctionNode< AVariableManager >.
|
pure virtual |
pure virtual print function, has to be overridden in derived class
Implemented in UnaryExpressionNode< AVariableManager >, BinaryExpressionNode< AVariableManager >, DataNode< AVariableManager, T >, IdentifierNode< AVariableManager >, and FunctionNode< AVariableManager >.