CVC3::ContextObjChain Class Reference
[Context Management]

#include <context.h>

Collaboration diagram for CVC3::ContextObjChain:

Collaboration graph
[legend]
List of all members.

Public Member Functions

Private Member Functions

Private Attributes

Friends


Detailed Description

Description: An element of a doubly linked list holding a copy of ContextObj in a scope. It is made separate from ContextObj to keep the list pointers valid in all scopes at all times, so that the object can be easily removed from the list when the master ContextObj is destroyed.

Definition at line 128 of file context.h.


Constructor & Destructor Documentation

CVC3::ContextObjChain::ContextObjChain ( ContextObj data,
ContextObj master,
ContextObjChain restore 
) [inline, private]

Private constructor (only friends can use it).

Definition at line 151 of file context.h.

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

Destructor.

Definition at line 161 of file context.h.


Member Function Documentation

ContextObjChain * ContextObjChain::restore ( void   )  [private]

Restore from d_data to d_master.

Definition at line 87 of file context.cpp.

References DebugAssert.

Referenced by CVC3::Scope::restore().

void* CVC3::ContextObjChain::operator new ( size_t  size,
MemoryManager mm 
) [inline]

Definition at line 163 of file context.h.

References CVC3::MemoryManager::newData().

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

Definition at line 166 of file context.h.

References CVC3::MemoryManager::deleteData().

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

Definition at line 170 of file context.h.

void* CVC3::ContextObjChain::operator new ( size_t  size,
bool  b 
) [inline]

Definition at line 174 of file context.h.

void CVC3::ContextObjChain::operator delete ( void *  pMem,
bool  b 
) [inline]

Definition at line 177 of file context.h.

std::string ContextObjChain::name (  )  const

Definition at line 116 of file context.cpp.

References d_master, DebugAssert, and CVC3::ContextObj::name().

Referenced by CVC3::Scope::check().


Friends And Related Function Documentation

friend class Scope [friend]

Definition at line 129 of file context.h.

friend class ContextObj [friend]

Definition at line 130 of file context.h.

friend class CDFlags [friend]

Definition at line 131 of file context.h.


Member Data Documentation

ContextObjChain* CVC3::ContextObjChain::d_restoreChainNext [private]

Next link in chain.

Definition at line 134 of file context.h.

Referenced by CVC3::Scope::addToChain(), CVC3::Scope::check(), and CVC3::Scope::finalize().

ContextObjChain** CVC3::ContextObjChain::d_restoreChainPrev [private]

Pointer to the pointer of the previous object which points to us. This makes a doubly-linked list for easy element deletion.

Definition at line 139 of file context.h.

Referenced by CVC3::Scope::addToChain().

ContextObjChain* CVC3::ContextObjChain::d_restore [private]

Pointer to the previous copy which belongs to the same master.

Definition at line 142 of file context.h.

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

ContextObj* CVC3::ContextObjChain::d_data [private]

Pointer to copy of master to be restored when restore() is called.

Definition at line 145 of file context.h.

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

ContextObj* CVC3::ContextObjChain::d_master [private]

Pointer to the master object.

Definition at line 148 of file context.h.

Referenced by CVC3::Scope::finalize(), and name().


The documentation for this class was generated from the following files:
Generated on Tue Jul 3 14:35:54 2007 for CVC3 by  doxygen 1.5.1