CVC3  2.4.1
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
CVC3::CDMap< Key, Data, HashFcn > Class Template Reference

#include <cdmap.h>

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

Classes

class  iterator
 
class  orderedIterator
 

Public Types

typedef CDOmap< Key, Data, HashFcn > & ElementReference
 

Public Member Functions

 CDMap (Context *context, int scope=-1)
 
 ~CDMap ()
 
size_t size () const
 
size_t count (const Key &k) const
 
CDOmap< Key, Data, HashFcn > & operator[] (const Key &k)
 
void insert (const Key &k, const Data &d, int scope=-1)
 
iterator begin () const
 
iterator end () const
 
orderedIterator orderedBegin () const
 
orderedIterator orderedEnd () const
 
iterator find (const Key &k) const
 
- Public Member Functions inherited from CVC3::ContextObj
 ContextObj (Context *context)
 Create a new ContextObj. More...
 
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. More...
 
virtual void restoreData (ContextObj *data)
 Restore the current object from the given data. More...
 
void emptyTrash ()
 
virtual void setNull (void)
 Set the current object to be invalid. More...
 

Private Attributes

std::hash_map< Key, CDOmap< Key, Data, HashFcn > *, HashFcn > d_map
 
std::vector< CDOmap< Key, Data, HashFcn > * > d_trash
 
CDOmap< Key, Data, HashFcn > * d_first
 
Contextd_context
 

Friends

class CDOmap< Key, Data, HashFcn >
 

Additional Inherited Members

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

Detailed Description

template<class Key, class Data, class HashFcn>
class CVC3::CDMap< Key, Data, HashFcn >

Definition at line 46 of file cdmap.h.

Member Typedef Documentation

template<class Key, class Data, class HashFcn>
typedef CDOmap<Key, Data, HashFcn>& CVC3::CDMap< Key, Data, HashFcn >::ElementReference

Definition at line 174 of file cdmap.h.

Constructor & Destructor Documentation

template<class Key, class Data, class HashFcn>
CVC3::CDMap< Key, Data, HashFcn >::CDMap ( Context context,
int  scope = -1 
)
inline

Definition at line 165 of file cdmap.h.

template<class Key, class Data, class HashFcn>
CVC3::CDMap< Key, Data, HashFcn >::~CDMap ( )
inline

Definition at line 169 of file cdmap.h.

Member Function Documentation

template<class Key, class Data, class HashFcn>
virtual ContextObj* CVC3::CDMap< 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 138 of file cdmap.h.

template<class Key, class Data, class HashFcn>
virtual void CVC3::CDMap< Key, Data, HashFcn >::restoreData ( ContextObj data)
inlineprivatevirtual

Restore the current object from the given data.

Reimplemented from CVC3::ContextObj.

Definition at line 141 of file cdmap.h.

template<class Key, class Data, class HashFcn>
void CVC3::CDMap< Key, Data, HashFcn >::emptyTrash ( )
inlineprivate
template<class Key, class Data, class HashFcn>
virtual void CVC3::CDMap< Key, Data, HashFcn >::setNull ( void  )
inlineprivatevirtual

Set the current object to be invalid.

Implements CVC3::ContextObj.

Definition at line 153 of file cdmap.h.

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

template<class Key, class Data, class HashFcn>
size_t CVC3::CDMap< Key, Data, HashFcn >::size ( ) const
inline

Definition at line 171 of file cdmap.h.

Referenced by CVC3::TheoryCore::incomplete().

template<class Key, class Data, class HashFcn>
size_t CVC3::CDMap< Key, Data, HashFcn >::count ( const Key &  k) const
inline

Definition at line 172 of file cdmap.h.

Referenced by CVC3::SearchImplBase::isCNFVar().

template<class Key, class Data, class HashFcn>
CDOmap<Key, Data, HashFcn>& CVC3::CDMap< Key, Data, HashFcn >::operator[] ( const Key &  k)
inline

Definition at line 177 of file cdmap.h.

template<class Key, class Data, class HashFcn>
void CVC3::CDMap< Key, Data, HashFcn >::insert ( const Key &  k,
const Data &  d,
int  scope = -1 
)
inline

Definition at line 190 of file cdmap.h.

Referenced by CVC3::TheoryCore::setIncomplete().

template<class Key, class Data, class HashFcn>
iterator CVC3::CDMap< Key, Data, HashFcn >::begin ( ) const
inline

Definition at line 257 of file cdmap.h.

Referenced by CVC3::TheoryCore::incomplete(), and CVC3::TheoryQuant::matchListOld().

template<class Key, class Data, class HashFcn>
iterator CVC3::CDMap< Key, Data, HashFcn >::end ( ) const
inline
template<class Key, class Data, class HashFcn>
orderedIterator CVC3::CDMap< Key, Data, HashFcn >::orderedBegin ( ) const
inline

Definition at line 300 of file cdmap.h.

template<class Key, class Data, class HashFcn>
orderedIterator CVC3::CDMap< Key, Data, HashFcn >::orderedEnd ( ) const
inline

Definition at line 301 of file cdmap.h.

template<class Key, class Data, class HashFcn>
iterator CVC3::CDMap< Key, Data, HashFcn >::find ( const Key &  k) const
inline

Friends And Related Function Documentation

template<class Key, class Data, class HashFcn>
friend class CDOmap< Key, Data, HashFcn >
friend

Definition at line 129 of file cdmap.h.

Member Data Documentation

template<class Key, class Data, class HashFcn>
std::hash_map<Key,CDOmap<Key, Data, HashFcn>*,HashFcn> CVC3::CDMap< Key, Data, HashFcn >::d_map
private

Definition at line 131 of file cdmap.h.

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

template<class Key, class Data, class HashFcn>
std::vector<CDOmap<Key, Data, HashFcn>*> CVC3::CDMap< Key, Data, HashFcn >::d_trash
private

Definition at line 133 of file cdmap.h.

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

template<class Key, class Data, class HashFcn>
CDOmap<Key, Data, HashFcn>* CVC3::CDMap< Key, Data, HashFcn >::d_first
private
template<class Key, class Data, class HashFcn>
Context* CVC3::CDMap< Key, Data, HashFcn >::d_context
private

Definition at line 135 of file cdmap.h.


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