27 #include <xqilla/framework/XQillaExport.hpp>
30 #include <xercesc/util/RefHash2KeysTableOf.hpp>
47 typedef XERCES_CPP_NAMESPACE_QUALIFIER RefHash2KeysTableOf< VarHashEntry<TYPE> >
VarHash;
58 void remove(
unsigned int nsID,
const XMLCh* name);
59 std::vector< std::pair<unsigned int, const XMLCh*> >
getVars()
const;
73 _map(17, true, memMgr)
95 return _map.get(name,nsID);
101 _map.put((
void*)_memMgr->getPooledString(name),nsID,value);
107 _map.removeKey(name,nsID);
113 std::vector< std::pair<unsigned int, const XMLCh*> > result;
114 XERCES_CPP_NAMESPACE_QUALIFIER RefHash2KeysTableOfEnumerator< VarHashEntry<TYPE> > iterator(const_cast<VarHash*>(&_map));
115 while(iterator.hasMoreElements())
119 iterator.nextElementKey((
void*&)name, nsID);
120 result.push_back(std::pair<unsigned int, const XMLCh*>(nsID,name));
Type
enum for classifying type of scope
Definition: Scope.hpp:41
Definition: XPath2MemoryManager.hpp:45
void clear()
Definition: Scope.hpp:81
Scope * getNext()
Definition: Scope.hpp:132
void remove(unsigned int nsID, const XMLCh *name)
Definition: Scope.hpp:105
void put(unsigned int nsID, const XMLCh *name, VarHashEntry< TYPE > *value)
Definition: Scope.hpp:99
xercesc::RefHash2KeysTableOf< VarHashEntry< TYPE > > VarHash
Definition: Scope.hpp:47
XMemory()
Protected default constructor.
Definition: XMemory.hpp:130
Scope(XPath2MemoryManager *memMgr, Type type)
constructor.
Definition: Scope.hpp:72
VarHashEntry< TYPE > * get(unsigned int nsID, const XMLCh *name)
Definition: Scope.hpp:93
The class that stores the values of the variables.
Definition: Scope.hpp:33
void setNext(Scope *next)
Definition: Scope.hpp:138
~Scope()
Definition: Scope.hpp:126
std::vector< std::pair< unsigned int, const XMLCh * > > getVars() const
Definition: Scope.hpp:111
used inside VariableStore to implement variable scoping
Definition: Scope.hpp:37
Type getType() const
Definition: Scope.hpp:87