CVC3::Scope Class Reference
[Context Management]

#include <context.h>

Collaboration diagram for CVC3::Scope:

Collaboration graph
[legend]
List of all members.

Public Member Functions

Private Member Functions

Private Attributes

Friends


Detailed Description

Author: Clark Barrett

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.


Constructor & Destructor Documentation

CVC3::Scope::Scope ( Context context,
ContextMemoryManager cmm,
Scope prevScope = NULL 
) [inline]

Constructor.

Definition at line 85 of file context.h.

References d_level, level(), and prevScope().

CVC3::Scope::~Scope (  )  [inline]

Destructor.

Definition at line 91 of file context.h.


Member Function Documentation

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]

Definition at line 98 of file context.h.

References d_context.

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]

Definition at line 101 of file context.h.

References CVC3::MemoryManager::newData().

void CVC3::Scope::operator delete ( void *  pMem,
MemoryManager mm 
) [inline]

Definition at line 103 of file context.h.

References CVC3::MemoryManager::deleteData().

void CVC3::Scope::operator delete ( void *   )  [inline]

Definition at line 106 of file context.h.

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().


Friends And Related Function Documentation

friend class ContextObj [friend]

Definition at line 61 of file context.h.

friend class ContextObjChain [friend]

Definition at line 62 of file context.h.

Referenced by CVC3::ContextObj::ContextObj().

friend class CDFlags [friend]

Definition at line 63 of file context.h.


Member Data Documentation

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]

Memory manager for this scope.

Definition at line 68 of file context.h.

Referenced by getCMM().

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]

Scope level.

Definition at line 74 of file context.h.

Referenced by check(), getMemory(), level(), and Scope().

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().


The documentation for this class was generated from the following files:
Generated on Wed Nov 18 16:14:37 2009 for CVC3 by  doxygen 1.5.2