// CPPScopeContainers.h: Definition of CPPScope container classes
#ifndef INCL_CPPSCOPECONTAINERS_H
#define INCL_CPPSCOPECONTAINERS_H
#include "CPPScopeIncomplete.h"
#include "CPPScopeLevel.h"
#include <map>
#include "JL_DList.h"
///////////////////////////////////////////////////////////////////////////////
// Implementation of mapping from scope names to scopes
///////////////////////////////////////////////////////////////////////////////
class CPPScopeTable :
public VRefCount,
public map<JLStr, CPPScopeRefI, less<JLStr>, allocator<CPPScopeRefI> >
{};
///////////////////////////////////////////////////////////////////////////////
// Implementation of a stack of scopes
///////////////////////////////////////////////////////////////////////////////
class CPPScopeStack :
public VRefCount,
public JL_DList<CPPScopeLevel, allocator<CPPScopeLevel> >
{};
#endif