Main Page | Class Hierarchy | Alphabetical List | Data Structures | File List | Data Fields | Globals

namespace.h

Go to the documentation of this file.
00001 #ifndef _NAMESPACE_H_
00002 #define _NAMESPACE_H_
00003 
00004 #include "streenode.h"
00005 #include <list>
00006 #include <set>
00007 
00008 #define ATTRIBUTETRUE "YES"
00009 
00011 class NameSpace{
00012  public:
00014   typedef map<const string, string> Attributes;
00016   typedef map<const string, Attributes> NameAttributesMap;
00017  private:
00018   
00020   NameSpace *superNameSpace;
00022   NameAttributesMap info;
00024   int ruleRunTime;
00025 
00026  public:
00028   NameSpace();
00030   NameSpace(NameSpace *isuperNameSpace);
00031 
00033   void ruleRunTimeStep(); 
00035   int getRuleRunTime() const; 
00037   void setRuleRunTime(int iruleRunTime);
00038 
00040   bool isAttributeSet(const string &name, const string &attribute, const bool global) const;
00042   bool isAttributeEqual(const string &name, const string &attribute, const string &value, const bool global) const;
00044   string getAttributeValue(const string &name, const string &attribute, const bool global) const;
00046   void setAttribute(const string &name, const string &attribute, const bool global);
00048   void setAttributeValue(const string &name, const string &attribute, const string &value, const bool global);
00050   void processArguments(const Node* arguments);
00052   void importLocals(const string& name, const NameSpace &nameSpace);
00053 };
00054 
00055 #endif

Generated on Fri Nov 21 17:54:03 2003 for PHPX by doxygen 1.3.3