41 #ifndef ListHashTable_H 42 #define ListHashTable_H 56 template<
class T>
class List;
59 template<
class T,
class Key,
class Hash>
Istream&
operator>>
65 template<
class T,
class Key,
class Hash>
Ostream&
operator<<
104 template<
class T,
class Key=word,
class Hash=
string::hash>
125 inline label hashKeyIndex(
const Key&)
const;
128 bool set(
const Key&,
const T& newElmt,
bool protect);
136 template<
class TRef,
class TableRef>
191 inline label size()
const;
194 inline bool empty()
const;
197 bool found(
const Key& key)
const;
201 iterator find(
const Key& key);
205 const_iterator find(
const Key& key)
const;
211 Ostream& printInfo(Ostream&)
const;
217 bool insert(
const Key& key,
const T& newElmt);
220 inline bool set(
const Key&,
const T& newElmt);
223 bool erase(
const iterator& it);
226 bool erase(
const Key& key);
250 inline T& operator[](
const Key&);
253 inline const T& operator[](
const Key&)
const;
256 inline T& operator()(
const Key&);
293 template<
class TRef,
class TableRef>
298 template<
class TRef2,
class TableRef2>
331 inline void operator=(
const iterator&);
333 inline bool operator==(
const iterator&)
const;
334 inline bool operator==(
const const_iterator&)
const;
336 inline bool operator!=(
const iterator&)
const;
337 inline bool operator!=(
const const_iterator&)
const;
340 inline TRef operator()();
345 inline const Key& key()
const;
350 inline iterator begin();
353 inline const iterator& end();
356 inline const_iterator cbegin()
const;
359 inline const const_iterator& cend()
const;
362 inline const_iterator begin()
const;
365 inline const const_iterator& end()
const;
369 friend Istream&
operator>> <
T, Key,
Hash>
375 friend Ostream& operator<< <T, Key, Hash>
388 const_iterator endConstIter_;
402 #ifndef NoListHashTableC T value_type
Type of values the ListHashTable contains.
A zero-sized end iterator.
iteratorEnd()
Construct null.
tmp< fvMatrix< Type > > operator*(const volScalarField::Internal &, const fvMatrix< Type > &)
const T & const_reference
Type that can be used for storing into constant.
Template-invariant bits for ListHashTable.
A 1D array of objects of type <T>, where the size of the vector is known and used for subscript bound...
An Istream is an abstract base class for all input systems (streams, files, token lists etc)...
ListHashTableCore()
Construct null.
static label canonicalSize(const label)
Return a canonical (power-of-two) size.
T & reference
Type that can be used for storing into ListHashTable::value_type.
void insert(const scalar, DynamicList< floatScalar > &)
Append scalar to given DynamicList.
tmp< fvMatrix< Type > > operator==(const fvMatrix< Type > &, const fvMatrix< Type > &)
triSurfaceToAgglom resize(surfacesMesh.size())
graph_traits< Graph >::vertices_size_type size_type
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)
STL conforming hash table using contiguous lists rather than linked lists.
Macro definitions for declaring ClassName(), NamespaceName(), etc.
Hash function class for primitives. All non-primitives used to hash entries on hash tables likely nee...
bool operator!=(const particle &, const particle &)
ClassName("ListHashTable")
Define template name and debug.