31#include "../utility/PEBLUtility.h"
32#include "../utility/PError.h"
75 std::map<std::string, PNode*>::iterator i = mFunctionMap.begin();
77 while(i != mFunctionMap.end())
81 i->second->DestroyChildren();
101 map<string, PNode*>::iterator p;
102 p = mFunctionMap.find(upperfuncname);
107 if(p!=mFunctionMap.end())
109 cerr <<
"Error in function '" << upperfuncname <<
"'. Function already exists.\n";
114 mFunctionMap.insert(pair<string, PNode* >(upperfuncname, node));
146 map<string,PNode*>::iterator p;
150 p = mFunctionMap.find(funcname);
152 if(p == mFunctionMap.end())
165 return (
OpNode*)(p->second);
187 map<string,PNode*>::iterator p;
188 p = mFunctionMap.find(upperfuncname);
191 if(p == mFunctionMap.end())
203 mFunctionMap.erase(upperfuncname);
214 map<string,PNode *>::iterator p;
215 cerr <<
"---------------------------\n Function Map:\n";
216 for(p= mFunctionMap.begin(); p!=mFunctionMap.end(); p++)
218 cerr <<
"Function Name: [" << std::flush;
219 cerr << p->first <<
":";
220 cerr <<
":" << *(p->second) <<
"]\n" ;
~FunctionMap()
The Standard destructor.
FunctionMap()
The Standard constructor.
bool IsFunction(const std::string &funcname)
void AddFunction(std::string funcname, OpNode *node)
PNode * GetFunction(const std::string &funcname)
void Erase(const std::string &funcname)
std::string ToUpper(const std::string &text)
void SignalFatalError(const std::string &message)