# Scope< TYPE > Class Template Reference

used inside VariableStore to implement variable scoping More...

`#include <Scope.hpp>`

Inheritance diagram for Scope< TYPE >:

[legend]
List of all members.

## Public Types

typedef xercesc::RefHash2KeysTableOf< VarHashEntry< TYPE > > | VarHash
enum | Type { GLOBAL_SCOPE, LOCAL_SCOPE, LOGICAL_BLOCK_SCOPE }
| enum for classifying type of scope More...

## Public Member Functions

| Scope (XPath2MemoryManager *memMgr, Type type)
| constructor.
| ~Scope ()
void | clear ()
Type | getType () const
VarHashEntry< TYPE > * | get (unsigned int nsID, const XMLCh *name)
void | put (unsigned int nsID, const XMLCh *name, VarHashEntry< TYPE > *value)
void | remove (unsigned int nsID, const XMLCh *name)
std::vector< std::pair< unsigned int, const XMLCh * > > | getVars () const
Scope * | getNext ()
void | setNext (Scope *next)

## Detailed Description

### template<class TYPE>
class Scope< TYPE >

used inside VariableStore to implement variable scoping

## Member Typedef Documentation

template<class TYPE>
typedef xercesc:: RefHash2KeysTableOf< VarHashEntry<TYPE> > Scope< TYPE >::VarHash

## Member Enumeration Documentation

template<class TYPE>
enum Scope::Type

enum for classifying type of scope

Enumerator:

  GLOBAL_SCOPE |
  LOCAL_SCOPE |
  LOGICAL_BLOCK_SCOPE |

## Constructor & Destructor Documentation

template<class TYPE>
Scope< TYPE >::Scope | ( | XPath2MemoryManager * | memMgr,
|  | Type | type
| ) |

| constructor.

template<class TYPE>
Scope< TYPE >::~Scope | ( |  | ) |

## Member Function Documentation

template<class TYPE>
void Scope< TYPE >::clear | ( |  | ) |

template<class TYPE>
VarHashEntry< TYPE > * Scope< TYPE >::get | ( | unsigned int | nsID,
|  | const XMLCh * | name
| ) |

template<class TYPE>
Scope< TYPE > * Scope< TYPE >::getNext | ( |  | ) |

template<class TYPE>
Scope< TYPE >::Type Scope< TYPE >::getType | ( |  | ) | const

template<class TYPE>
std::vector< std::pair< unsigned int, const XMLCh * > > Scope< TYPE >::getVars | ( |  | ) | const

template<class TYPE>
void Scope< TYPE >::put | ( | unsigned int | nsID,
|  | const XMLCh * | name,
|  | VarHashEntry< TYPE > * | value
| ) |

template<class TYPE>
void Scope< TYPE >::remove | ( | unsigned int | nsID,
|  | const XMLCh * | name
| ) |

template<class TYPE>
void Scope< TYPE >::setNext | ( | Scope< TYPE > * | next | ) |

The documentation for this class was generated from the following file:

- Scope.hpp