CVC3  2.4.1
Public Member Functions | Private Member Functions | Private Attributes
CVC3::CDOmap< Key, Data, HashFcn > Class Template Reference

#include <cdmap.h>

Inheritance diagram for CVC3::CDOmap< Key, Data, HashFcn >:
CVC3::ContextObj

List of all members.

Public Member Functions

 CDOmap (Context *context, CDMap< Key, Data, HashFcn > *cdmap, const Key &key, const Data &data, int scope=-1)
 ~CDOmap ()
void set (const Data &data, int scope=-1)
const Key & getKey () const
const Data & get () const
 operator Data ()
CDOmap< Key, Data, HashFcn > & operator= (const Data &data)
CDOmap< Key, Data, HashFcn > * next () const
- Public Member Functions inherited from CVC3::ContextObj
 ContextObj (Context *context)
 Create a new ContextObj.
virtual ~ContextObj ()
int level () const
bool isCurrent (int scope=-1) const
void makeCurrent (int scope=-1)
void * operator new (size_t size, MemoryManager *mm)
void operator delete (void *pMem, MemoryManager *mm)
void * operator new (size_t size, bool b)
void operator delete (void *pMem, bool b)
void operator delete (void *)

Private Member Functions

virtual ContextObjmakeCopy (ContextMemoryManager *cmm)
 Make a copy of the current object so it can be restored to its current state.
virtual void restoreData (ContextObj *data)
 Restore the current object from the given data.
virtual void setNull (void)
 Set the current object to be invalid.

Private Attributes

Key d_key
Data d_data
bool d_inMap
CDMap< Key, Data, HashFcn > * d_cdmap
CDOmap< Key, Data, HashFcn > * d_prev
CDOmap< Key, Data, HashFcn > * d_next

Additional Inherited Members

- Protected Member Functions inherited from CVC3::ContextObj
 ContextObj (const ContextObj &co)
 Copy constructor (defined mainly for debugging purposes)
ContextObjoperator= (const ContextObj &co)
 Assignment operator (defined mainly for debugging purposes)
const ContextObjgetRestore ()
ContextMemoryManagergetCMM ()
 Return our name (for debugging)

Detailed Description

template<class Key, class Data, class HashFcn = std::hash<Key>>
class CVC3::CDOmap< Key, Data, HashFcn >

Definition at line 49 of file cdmap.h.


Constructor & Destructor Documentation

template<class Key, class Data, class HashFcn = std::hash<Key>>
CVC3::CDOmap< Key, Data, HashFcn >::CDOmap ( Context context,
CDMap< Key, Data, HashFcn > *  cdmap,
const Key &  key,
const Data &  data,
int  scope = -1 
)
inline

Definition at line 86 of file cdmap.h.

template<class Key, class Data, class HashFcn = std::hash<Key>>
CVC3::CDOmap< Key, Data, HashFcn >::~CDOmap ( )
inline

Definition at line 101 of file cdmap.h.


Member Function Documentation

template<class Key, class Data, class HashFcn = std::hash<Key>>
virtual ContextObj* CVC3::CDOmap< Key, Data, HashFcn >::makeCopy ( ContextMemoryManager cmm)
inlineprivatevirtual

Make a copy of the current object so it can be restored to its current state.

Implements CVC3::ContextObj.

Definition at line 59 of file cdmap.h.

template<class Key, class Data, class HashFcn = std::hash<Key>>
virtual void CVC3::CDOmap< Key, Data, HashFcn >::restoreData ( ContextObj data)
inlineprivatevirtual

Restore the current object from the given data.

Reimplemented from CVC3::ContextObj.

Definition at line 62 of file cdmap.h.

template<class Key, class Data, class HashFcn = std::hash<Key>>
virtual void CVC3::CDOmap< Key, Data, HashFcn >::setNull ( void  )
inlineprivatevirtual

Set the current object to be invalid.

Implements CVC3::ContextObj.

Definition at line 67 of file cdmap.h.

Referenced by CVC3::CDOmap< Expr, Expr, HashFcn >::restoreData().

template<class Key, class Data, class HashFcn = std::hash<Key>>
void CVC3::CDOmap< Key, Data, HashFcn >::set ( const Data &  data,
int  scope = -1 
)
inline

Definition at line 102 of file cdmap.h.

Referenced by CVC3::CDMap< Expr, Expr, HashFcn >::insert().

template<class Key, class Data, class HashFcn = std::hash<Key>>
const Key& CVC3::CDOmap< Key, Data, HashFcn >::getKey ( ) const
inline

Definition at line 105 of file cdmap.h.

template<class Key, class Data, class HashFcn = std::hash<Key>>
const Data& CVC3::CDOmap< Key, Data, HashFcn >::get ( ) const
inline
template<class Key, class Data, class HashFcn = std::hash<Key>>
CVC3::CDOmap< Key, Data, HashFcn >::operator Data ( )
inline

Definition at line 107 of file cdmap.h.

template<class Key, class Data, class HashFcn = std::hash<Key>>
CDOmap<Key, Data, HashFcn>& CVC3::CDOmap< Key, Data, HashFcn >::operator= ( const Data &  data)
inline

Definition at line 108 of file cdmap.h.

template<class Key, class Data, class HashFcn = std::hash<Key>>
CDOmap<Key, Data, HashFcn>* CVC3::CDOmap< Key, Data, HashFcn >::next ( ) const
inline

Definition at line 109 of file cdmap.h.


Member Data Documentation

template<class Key, class Data, class HashFcn = std::hash<Key>>
Key CVC3::CDOmap< Key, Data, HashFcn >::d_key
private
template<class Key, class Data, class HashFcn = std::hash<Key>>
Data CVC3::CDOmap< Key, Data, HashFcn >::d_data
private
template<class Key, class Data, class HashFcn = std::hash<Key>>
bool CVC3::CDOmap< Key, Data, HashFcn >::d_inMap
private
template<class Key, class Data, class HashFcn = std::hash<Key>>
CDMap<Key, Data, HashFcn>* CVC3::CDOmap< Key, Data, HashFcn >::d_cdmap
private
template<class Key, class Data, class HashFcn = std::hash<Key>>
CDOmap<Key, Data, HashFcn>* CVC3::CDOmap< Key, Data, HashFcn >::d_prev
private
template<class Key, class Data, class HashFcn = std::hash<Key>>
CDOmap<Key, Data, HashFcn>* CVC3::CDOmap< Key, Data, HashFcn >::d_next
private

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