CVC3
Public Types | Public Member Functions | Protected Types | Protected Attributes

Hash::hash_set< _Key, _HashFcn, _EqualKey > Class Template Reference

#include <hash_set.h>

Collaboration diagram for Hash::hash_set< _Key, _HashFcn, _EqualKey >:
Collaboration graph
[legend]

List of all members.

Public Types

Public Member Functions

Protected Types

Protected Attributes


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::VariableManager::gc(), and CVC3::ExprManager::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: