36 #ifndef HashPtrTable_H 37 #define HashPtrTable_H 51 template<
class T,
class Key,
class Hash>
class HashPtrTable;
53 template<
class T,
class Key,
class Hash>
56 template<
class T,
class Key,
class Hash>
57 Ostream& operator<<(Ostream&, const HashPtrTable<T, Key, Hash>&);
64 template<
class T,
class Key=word,
class Hash=
string::hash>
116 T*
remove(iterator&);
119 bool erase(iterator&);
141 friend Ostream& operator<< <T, Key, Hash>
~HashPtrTable()
Destructor.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
HashPtrTable(const label size=128)
Construct given initial table size.
void operator=(const HashPtrTable< T, Key, Hash > &)
A list of keyword definitions, which are a keyword followed by any number of values (e...
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
label size() const
Return number of elements in table.
A HashTable specialization for hashing pointers.
void clear()
Clear all entries from table.
HashTable< T *, Key, Hash >::const_iterator const_iterator
Istream & operator>>(Istream &, directionInfo &)
An STL-conforming hash table.
An Ostream is an abstract base class for all output systems (streams, files, token lists...
void T(FieldField< Field, Type > &f1, const FieldField< Field, Type > &f2)
A helper class when constructing from an Istream or dictionary.
Hash function class for primitives. All non-primitives used to hash entries on hash tables likely nee...
HashTable< T *, Key, Hash >::iterator iterator
bool erase(iterator &)
Erase an hashedEntry specified by given iterator.
void write(Ostream &os) const
Write.