Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey > Class Template Reference

#include <hash_map.h>

Inheritance diagram for Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >:

Inheritance graph
[legend]
Collaboration diagram for Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >:

Collaboration graph
[legend]
List of all members.

Public Types

Public Member Functions

Protected Types

Protected Attributes


Detailed Description

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

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

_Key: hash key type _Data: data to store _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 82 of file hash_map.h.


Member Typedef Documentation

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
typedef hash_table<_Key, std::pair<const _Key, _Data>, _HashFcn, _EqualKey, _Select1st<std::pair<const _Key, _Data> > > Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::_hash_table [protected]

types

Definition at line 93 of file hash_map.h.

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

Definition at line 97 of file hash_map.h.

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

Definition at line 98 of file hash_map.h.

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
typedef _Data Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::data_type

Definition at line 99 of file hash_map.h.

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

Definition at line 100 of file hash_map.h.

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

Definition at line 101 of file hash_map.h.

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

Definition at line 102 of file hash_map.h.

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

Definition at line 106 of file hash_map.h.

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

Definition at line 107 of file hash_map.h.


Constructor & Destructor Documentation

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::hash_map (  )  [inline]

constructors

Definition at line 122 of file hash_map.h.

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::hash_map ( size_type  initial_capacity  )  [inline]

Definition at line 127 of file hash_map.h.

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

Definition at line 132 of file hash_map.h.

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

Definition at line 137 of file hash_map.h.

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

Definition at line 143 of file hash_map.h.


Member Function Documentation

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

Definition at line 148 of file hash_map.h.

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

Definition at line 156 of file hash_map.h.

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
void Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::clear (  )  [inline]

Definition at line 161 of file hash_map.h.

Referenced by CVC3::ExprHashMap< std::vector< CVC3::Circuit * > >::clear(), CVC3::TheoremManager::clearAllFlags(), and SAT::CNF_Formula_Impl::reset().

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
iterator Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::find ( const key_type key  )  [inline]

operations

Definition at line 171 of file hash_map.h.

Referenced by CVC3::TheoryArithNew::checkSatSimplex(), MiniSat::Derivation::computeRootReason(), CVC3::ExprHashMap< std::vector< CVC3::Circuit * > >::find(), CVC3::TheoremManager::getCachedValue(), CVC3::TheoremManager::getExpandFlag(), CVC3::TheoremManager::getLitFlag(), CVC3::TheoryArithNew::getVariableIntroThm(), CVC3::TheoryArithNew::isBasic(), CVC3::TheoryArithNew::pivot(), CVC3::TheoryArithNew::pivotAndUpdate(), MiniSat::Derivation::printProof(), SAT::CNF_Formula_Impl::simplify(), CVC3::TheoryArithNew::substAndCanonizeModTableaux(), CVC3::TheoryArithNew::substAndCanonizeTableaux(), and CVC3::TheoryArithNew::update().

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

Definition at line 176 of file hash_map.h.

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
data_type& Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::operator[] ( const key_type key  )  [inline]

Definition at line 183 of file hash_map.h.

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
std::pair<iterator, bool> Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::insert ( const value_type entry  )  [inline]

Definition at line 190 of file hash_map.h.

Referenced by CVC3::ExprHashMap< std::vector< CVC3::Circuit * > >::insert(), and CVC3::TheoryArithNew::updateDependencies().

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
size_type Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::erase ( const key_type key  )  [inline]

Definition at line 197 of file hash_map.h.

Referenced by CVC3::ExprHashMap< std::vector< CVC3::Circuit * > >::erase(), CVC3::TheoryArithNew::pivot(), MiniSat::Derivation::pop(), and CVC3::TheoryArithNew::updateDependencies().

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

status

Definition at line 206 of file hash_map.h.

Referenced by MiniSat::Derivation::printProof(), MiniSat::Derivation::registerClause(), and MiniSat::Derivation::registerInference().

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

Definition at line 212 of file hash_map.h.

Referenced by CVC3::ExprHashMap< std::vector< CVC3::Circuit * > >::count(), CVC3::ExprManager::getKindName(), CVC3::TheoremManager::isFlagged(), CVC3::ExprManager::newKind(), and CVC3::Debug::timer().

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

Definition at line 217 of file hash_map.h.

Referenced by CVC3::ExprHashMap< std::vector< CVC3::Circuit * > >::empty(), and CVC3::TheoryArithNew::substAndCanonizeModTableaux().

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

Definition at line 222 of file hash_map.h.

Referenced by CVC3::TheoryArithNew::checkSatSimplex(), CVC3::Debug::printAll(), and CVC3::ExprHashMap< std::vector< CVC3::Circuit * > >::size().

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

Definition at line 227 of file hash_map.h.

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

Definition at line 232 of file hash_map.h.

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
iterator Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::begin (  )  [inline]

iterators

Definition at line 241 of file hash_map.h.

Referenced by CVC3::ExprHashMap< std::vector< CVC3::Circuit * > >::begin(), CVC3::TheoryArithNew::boundsAsString(), MiniSat::Derivation::pop(), CVC3::Debug::printAll(), CVC3::TheoryArithNew::tableauxAsString(), CVC3::Debug::~Debug(), and MiniSat::Derivation::~Derivation().

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
const_iterator Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::begin (  )  const [inline]

Definition at line 246 of file hash_map.h.

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
iterator Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::end (  )  [inline]

Definition at line 252 of file hash_map.h.

Referenced by CVC3::TheoryArithNew::boundsAsString(), MiniSat::Derivation::computeRootReason(), CVC3::ExprHashMap< std::vector< CVC3::Circuit * > >::end(), CVC3::TheoremManager::getCachedValue(), CVC3::TheoremManager::getExpandFlag(), CVC3::TheoremManager::getLitFlag(), CVC3::TheoryArithNew::getVariableIntroThm(), CVC3::TheoryArithNew::isBasic(), CVC3::TheoryArithNew::pivotAndUpdate(), MiniSat::Derivation::pop(), CVC3::Debug::printAll(), MiniSat::Derivation::printProof(), SAT::CNF_Formula_Impl::simplify(), CVC3::TheoryArithNew::substAndCanonizeModTableaux(), CVC3::TheoryArithNew::substAndCanonizeTableaux(), CVC3::TheoryArithNew::tableauxAsString(), CVC3::TheoryArithNew::update(), CVC3::Debug::~Debug(), and MiniSat::Derivation::~Derivation().

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
const_iterator Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::end (  )  const [inline]

Definition at line 257 of file hash_map.h.


Member Data Documentation

template<class _Key, class _Data, class _HashFcn = hash<_Key>, class _EqualKey = std::equal_to<_Key>>
_hash_table Hash::hash_map< _Key, _Data, _HashFcn, _EqualKey >::d_table [protected]

variables

Definition at line 113 of file hash_map.h.

Referenced by Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::begin(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::bucket_count(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::clear(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::contains(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::count(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::empty(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::end(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::erase(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::find(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::insert(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::load_factor(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::operator=(), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::operator[](), Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::size(), and Hash::hash_map< CVC3::Expr, CVC3::CDOmap< CVC3::Expr, CVC3::Expr, HashFcn > * >::swap().


The documentation for this class was generated from the following file:
Generated on Tue Jul 3 14:42:21 2007 for CVC3 by  doxygen 1.5.1