CVC3  2.4.1
Public Types | Public Member Functions | Protected Types | Protected Attributes
Hash::hash_set< _Key, _HashFcn, _EqualKey > Class Template Reference

#include <hash_set.h>

List of all members.

Public Types

typedef _hash_table::size_type size_type
typedef _hash_table::key_type key_type
typedef _hash_table::value_type value_type
typedef _hash_table::hasher hasher
typedef _hash_table::key_equal key_equal
typedef _hash_table::iterator iterator
typedef _hash_table::const_iterator const_iterator

Public Member Functions

 hash_set ()
 methods
 hash_set (size_type initial_capacity)
 hash_set (size_type initial_capacity, const _HashFcn &hash)
 hash_set (size_type initial_capacity, const _HashFcn &hash, const _EqualKey &equal)
 hash_set (const hash_set &other)
hash_setoperator= (const hash_set &other)
void swap (hash_set &other)
void clear ()
iterator find (const key_type &key)
 operations
const_iterator find (const key_type &key) const
std::pair< iterator, bool > insert (const value_type &entry)
size_type erase (const key_type &key)
bool contains (const key_type &key) const
 status
size_type count (const _Key &key) const
bool empty () const
size_type size () const
size_type bucket_count () const
float load_factor () const
iterator begin ()
 iterators
const_iterator begin () const
iterator end ()
const_iterator end () const

Protected Types

typedef hash_table< _Key, _Key,
_HashFcn, _EqualKey, _Identity
< _Key > > 
_hash_table
 types

Protected Attributes

_hash_table d_table
 variables

Detailed Description

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
class Hash::hash_set< _Key, _HashFcn, _EqualKey >

hash set implementation based on the sgi interface: http://www.sgi.com/tech/stl/hash_set.html

_Key: hash key type _HashFcn: functional class providing a hash function: size_type (_Key) _EqualKey: functional class providing a comparison function: bool(_Key, _Key) returns true iff two keys are considered to be equal

Definition at line 78 of file hash_set.h.


Member Typedef Documentation

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
typedef hash_table<_Key, _Key, _HashFcn, _EqualKey, _Identity<_Key> > Hash::hash_set< _Key, _HashFcn, _EqualKey >::_hash_table
protected

types

Definition at line 82 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
typedef _hash_table::size_type Hash::hash_set< _Key, _HashFcn, _EqualKey >::size_type

Definition at line 86 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
typedef _hash_table::key_type Hash::hash_set< _Key, _HashFcn, _EqualKey >::key_type

Definition at line 87 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
typedef _hash_table::value_type Hash::hash_set< _Key, _HashFcn, _EqualKey >::value_type

Definition at line 88 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
typedef _hash_table::hasher Hash::hash_set< _Key, _HashFcn, _EqualKey >::hasher

Definition at line 89 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
typedef _hash_table::key_equal Hash::hash_set< _Key, _HashFcn, _EqualKey >::key_equal

Definition at line 90 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
typedef _hash_table::iterator Hash::hash_set< _Key, _HashFcn, _EqualKey >::iterator

Definition at line 94 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
typedef _hash_table::const_iterator Hash::hash_set< _Key, _HashFcn, _EqualKey >::const_iterator

Definition at line 95 of file hash_set.h.


Constructor & Destructor Documentation

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
Hash::hash_set< _Key, _HashFcn, _EqualKey >::hash_set ( )
inline

methods

constructors

Definition at line 112 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
Hash::hash_set< _Key, _HashFcn, _EqualKey >::hash_set ( size_type  initial_capacity)
inline

Definition at line 117 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
Hash::hash_set< _Key, _HashFcn, _EqualKey >::hash_set ( size_type  initial_capacity,
const _HashFcn &  hash 
)
inline

Definition at line 122 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
Hash::hash_set< _Key, _HashFcn, _EqualKey >::hash_set ( size_type  initial_capacity,
const _HashFcn &  hash,
const _EqualKey &  equal 
)
inline

Definition at line 127 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
Hash::hash_set< _Key, _HashFcn, _EqualKey >::hash_set ( const hash_set< _Key, _HashFcn, _EqualKey > &  other)
inline

Definition at line 133 of file hash_set.h.


Member Function Documentation

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
hash_set& Hash::hash_set< _Key, _HashFcn, _EqualKey >::operator= ( const hash_set< _Key, _HashFcn, _EqualKey > &  other)
inline

Definition at line 138 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
void Hash::hash_set< _Key, _HashFcn, _EqualKey >::swap ( hash_set< _Key, _HashFcn, _EqualKey > &  other)
inline

Definition at line 146 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
void Hash::hash_set< _Key, _HashFcn, _EqualKey >::clear ( )
inline
template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
iterator Hash::hash_set< _Key, _HashFcn, _EqualKey >::find ( const key_type key)
inline

operations

Definition at line 161 of file hash_set.h.

Referenced by CVC3::ExprManager::newExprValue(), and CVC3::ExprManager::rebuildRec().

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
const_iterator Hash::hash_set< _Key, _HashFcn, _EqualKey >::find ( const key_type key) const
inline

Definition at line 166 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
std::pair<iterator, bool> Hash::hash_set< _Key, _HashFcn, _EqualKey >::insert ( const value_type entry)
inline
template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
size_type Hash::hash_set< _Key, _HashFcn, _EqualKey >::erase ( const key_type key)
inline

Definition at line 180 of file hash_set.h.

Referenced by CVC3::ExprManager::gc(), and CVC3::VariableManager::gc().

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
bool Hash::hash_set< _Key, _HashFcn, _EqualKey >::contains ( const key_type key) const
inline

status

Definition at line 189 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
size_type Hash::hash_set< _Key, _HashFcn, _EqualKey >::count ( const _Key &  key) const
inline

Definition at line 195 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
bool Hash::hash_set< _Key, _HashFcn, _EqualKey >::empty ( ) const
inline

Definition at line 200 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
size_type Hash::hash_set< _Key, _HashFcn, _EqualKey >::size ( ) const
inline

Definition at line 205 of file hash_set.h.

Referenced by CVC3::ExprManager::clear().

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
size_type Hash::hash_set< _Key, _HashFcn, _EqualKey >::bucket_count ( ) const
inline

Definition at line 210 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
float Hash::hash_set< _Key, _HashFcn, _EqualKey >::load_factor ( ) const
inline

Definition at line 215 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
iterator Hash::hash_set< _Key, _HashFcn, _EqualKey >::begin ( )
inline
template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
const_iterator Hash::hash_set< _Key, _HashFcn, _EqualKey >::begin ( ) const
inline

Definition at line 229 of file hash_set.h.

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
iterator Hash::hash_set< _Key, _HashFcn, _EqualKey >::end ( )
inline
template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
const_iterator Hash::hash_set< _Key, _HashFcn, _EqualKey >::end ( ) const
inline

Definition at line 240 of file hash_set.h.


Member Data Documentation

template<class _Key, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
_hash_table Hash::hash_set< _Key, _HashFcn, _EqualKey >::d_table
protected

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