libSBML Perl API  5.20.5
Loading...
Searching...
No Matches
DistribASTPlugin Class Reference
Inheritance diagram for DistribASTPlugin:
[legend]

Detailed Description

distrib Extension of AST.

Public Member Functions

virtual int allowedInFunctionDefinition (ASTNodeType_t type) const
 Check if the node type is known to be allowed inside function definitions.
virtual DistribASTPluginclone () const
 Creates and returns a deep copy of this DistribASTPlugin object.
 DistribASTPlugin ()
 Creates a new DistribASTPlugin object.
 DistribASTPlugin (const DistribASTPlugin &orig)
 DistribASTPlugin (const std::string &uri)
virtual double evaluateASTNode (const ASTNode *node, const Model *m=NULL) const
virtual UnitDefinitiongetUnitDefinitionFromPackage (UnitFormulaFormatter *uff, const ASTNode *node, bool inKL, int reactNo) const
virtual bool hasCorrectNamespace (SBMLNamespaces *namespaces) const
DistribASTPluginoperator= (const DistribASTPlugin &orig)
 Assignment operator for DistribASTPlugin.
virtual ~DistribASTPlugin ()
 Destructor for DistribASTPlugin.

Constructor & Destructor Documentation

◆ DistribASTPlugin() [1/3]

DistribASTPlugin::DistribASTPlugin ( )

Creates a new DistribASTPlugin object.

◆ DistribASTPlugin() [2/3]

DistribASTPlugin::DistribASTPlugin ( const DistribASTPlugin & orig)

◆ ~DistribASTPlugin()

DistribASTPlugin::~DistribASTPlugin ( )
virtual

Destructor for DistribASTPlugin.

◆ DistribASTPlugin() [3/3]

DistribASTPlugin::DistribASTPlugin ( const std::string & uri)

Member Function Documentation

◆ allowedInFunctionDefinition()

int DistribASTPlugin::allowedInFunctionDefinition ( ASTNodeType_t type) const
virtual

Check if the node type is known to be allowed inside function definitions.

Function definitions must be able to be evaluated without resort to outside information. Therefore, some ASTNodes (like AST_TIME and AST_FUNCTION_RATE_OF) are disallowed from appearing there. This function checks whether this is true for a given type: a return value of '-1' means the plugin has no knowledge of that type; a return value of '1' means the plugin knows that the type is indeed allowed, and a return value of '0' means that the plugin knows that the type is not allowed.

◆ clone()

DistribASTPlugin * DistribASTPlugin::clone ( ) const
virtual

Creates and returns a deep copy of this DistribASTPlugin object.

Returns
the (deep) copy of this DistribASTPlugin object.

◆ evaluateASTNode()

double DistribASTPlugin::evaluateASTNode ( const ASTNode * node,
const Model * m = NULL ) const
virtual

◆ getUnitDefinitionFromPackage()

UnitDefinition * DistribASTPlugin::getUnitDefinitionFromPackage ( UnitFormulaFormatter * uff,
const ASTNode * node,
bool inKL,
int reactNo ) const
virtual

◆ hasCorrectNamespace()

bool DistribASTPlugin::hasCorrectNamespace ( SBMLNamespaces * namespaces) const
virtual

◆ operator=()

DistribASTPlugin & DistribASTPlugin::operator= ( const DistribASTPlugin & orig)

Assignment operator for DistribASTPlugin.

Parameters
origthe object whose values are used as the basis of the assignment.