#include <context.h>
Collaboration diagram for CVC3::Scope:
Created: Thu Feb 13 00:19:15 2003
A scope encapsulates the portion of a context which has changed since the last call to push(). Thus, when pop() is called, everything in this scope is restored to its previous state.
Definition at line 60 of file context.h.
CVC3::Scope::Scope | ( | Context * | context, | |
ContextMemoryManager * | cmm, | |||
Scope * | prevScope = NULL | |||
) | [inline] |
Scope* CVC3::Scope::prevScope | ( | ) | const [inline] |
Access functions.
Definition at line 94 of file context.h.
References d_prevScope.
Referenced by CVC3::Context::pop(), Scope(), CVC3::ContextObj::update(), CVC3::CDFlags::update(), and CVC3::Context::~Context().
int CVC3::Scope::level | ( | void | ) | const [inline] |
Definition at line 95 of file context.h.
References d_level.
Referenced by Scope(), CVC3::ContextObj::update(), and CVC3::CDFlags::update().
Context* CVC3::Scope::getContext | ( | ) | const [inline] |
ContextMemoryManager* CVC3::Scope::getCMM | ( | ) | const [inline] |
Definition at line 99 of file context.h.
References d_cmm.
Referenced by getMemory(), CVC3::CDFlags::update(), and CVC3::Context::~Context().
void* CVC3::Scope::operator new | ( | size_t | size, | |
MemoryManager * | mm | |||
) | [inline] |
void CVC3::Scope::operator delete | ( | void * | pMem, | |
MemoryManager * | mm | |||
) | [inline] |
void Scope::finalize | ( | void | ) |
Called by ~ContextManager.
Definition at line 37 of file context.cpp.
References CVC3::ContextObjChain::d_master, CVC3::ContextObj::d_restore, d_restoreChain, CVC3::ContextObjChain::d_restoreChainNext, and CVC3::ContextObj::d_scope.
Referenced by CVC3::Context::~Context().
void Scope::check | ( | void | ) |
Check for memory leaks.
Definition at line 55 of file context.cpp.
References d_level, d_restoreChain, CVC3::ContextObjChain::d_restoreChainNext, std::endl(), and IF_DEBUG.
unsigned long Scope::getMemory | ( | int | verbosity | ) |
Compute memory used.
Definition at line 82 of file context.cpp.
References d_level, d_prevScope, std::endl(), getCMM(), getMemory(), and CVC3::ContextMemoryManager::getMemory().
Referenced by CVC3::Context::getMemory(), and getMemory().
friend class ContextObj [friend] |
friend class ContextObjChain [friend] |
Context* CVC3::Scope::d_context [private] |
Context that created this scope.
Definition at line 65 of file context.h.
Referenced by getContext(), isCurrent(), topScope(), and CVC3::ContextNotifyObj::~ContextNotifyObj().
ContextMemoryManager* CVC3::Scope::d_cmm [private] |
Scope* CVC3::Scope::d_prevScope [private] |
Previous scope in this context.
Definition at line 71 of file context.h.
Referenced by getMemory(), and prevScope().
int CVC3::Scope::d_level [private] |
ContextObjChain* CVC3::Scope::d_restoreChain [private] |
Linked list of objects which are "current" in this scope, and thus need to be restored when the scope is deleted.
Definition at line 78 of file context.h.
Referenced by addToChain(), check(), finalize(), and restore().