|
| constexpr | Map () noexcept=default |
| | Default construct: empty without allocation (capacity=0).
|
| constexpr | Map (Foam::zero) noexcept |
| | Construct empty without allocation (capacity=0).
|
| | Map (const label initialCapacity) |
| | Construct empty with given initial table capacity.
|
| | Map (Istream &is) |
| | Construct from Istream (with default initial table capacity).
|
| | Map (const this_type &map) |
| | Copy construct.
|
| | Map (this_type &&map) noexcept |
| | Move construct.
|
| | Map (std::initializer_list< std::pair< label, T > > map, const bool overwrite=false) |
| | Construct from key/value pairs in initializer list.
|
| | Map (const UList< label > &keys, const UList< T > &values, const bool overwrite=false) |
| | Construct from key/value pairs.
|
| void | operator= (const this_type &rhs) |
| | Copy assignment.
|
| void | operator= (this_type &&rhs) |
| | Move assignment.
|
| void | operator= (const this_type &rhs) |
| | Copy assign.
|
| void | operator= (std::initializer_list< std::pair< label, T > > rhs) |
| | Copy assign from an initializer list.
|
| void | operator= (this_type &&rhs) |
| | Move assign.
|
| constexpr | HashTable () noexcept |
| | Default construct: empty without allocation (capacity=0).
|
| constexpr | HashTable (Foam::zero) noexcept |
| | Construct empty without allocation (capacity=0).
|
| | HashTable (const label initialCapacity) |
| | Construct empty with initial table capacity.
|
| | HashTable (Istream &is) |
| | Construct from Istream.
|
| | HashTable (const this_type &ht) |
| | Copy construct.
|
| | HashTable (this_type &&rhs) noexcept |
| | Move construct.
|
| | HashTable (std::initializer_list< std::pair< label, T > > list, const bool overwrite=false) |
| | Construct from key/value pairs in initializer list.
|
| | HashTable (const UList< label > &keys, const UList< T > &values, const bool overwrite=false) |
| | Construct from key/value pairs.
|
| | ~HashTable () |
| | Destructor.
|
| bool | empty () const noexcept |
| | True if the hash table is empty.
|
| label | size () const noexcept |
| | The number of elements in table.
|
| label | capacity () const noexcept |
| | The size of the underlying table (the number of buckets).
|
| T & | at (const label &key) |
| | Find and return a hashed entry. FatalError if it does not exist.
|
| const T & | at (const label &key) const |
| | Find and return a hashed entry. FatalError if it does not exist.
|
| bool | contains (const label &key) const |
| | True if hashed key is contained (found) in table.
|
| iterator | find (const label &key) |
| | Find and return an iterator set at the hashed entry.
|
| const_iterator | find (const label &key) const |
| | Find and return an const_iterator set at the hashed entry.
|
| const_iterator | cfind (const label &key) const |
| | Find and return an const_iterator set at the hashed entry.
|
| const T & | lookup (const label &key, const T &deflt) const |
| | Return hashed entry if it exists, or return the given default.
|
| List< label > | toc () const |
| | The table of contents (the keys) in unsorted order.
|
| List< label > | sortedToc () const |
| | The table of contents (the keys) in sorted order.
|
| List< label > | sortedToc (const Compare &comp) const |
| | The table of contents (the keys) sorted according to the specified comparator.
|
| List< label > | tocKeys (const UnaryPredicate &pred, const bool invert=false) const |
| | The table of contents (the keys) selected according to the unary predicate applied to the keys.
|
| List< label > | tocValues (const UnaryPredicate &pred, const bool invert=false) const |
| | The table of contents (the keys) selected according to the unary predicate applied to the values.
|
| List< label > | tocEntries (const BinaryPredicate &pred, const bool invert=false) const |
| | The table of contents (the keys) selected according to the binary predicate applied to the keys and values.
|
| UPtrList< const node_type > | csorted () const |
| | Const access to the hash-table contents in sorted order (sorted by keys).
|
| UPtrList< node_type > | sorted () |
| | Non-const access to the hash-table contents in sorted order (sorted by keys).
|
| label | countKeys (const UnaryPredicate &pred, const bool invert=false) const |
| | Count the number of keys that satisfy the unary predicate.
|
| label | countValues (const UnaryPredicate &pred, const bool invert=false) const |
| | Count the number of values that satisfy the unary predicate.
|
| label | countEntries (const BinaryPredicate &pred, const bool invert=false) const |
| | Count the number of entries that satisfy the binary predicate.
|
| bool | emplace (const label &key, Args &&... args) |
| | Emplace insert a new entry, not overwriting existing entries.
|
| bool | emplace_set (const label &key, Args &&... args) |
| | Emplace set an entry, overwriting any existing entries.
|
| bool | insert (const label &key, const T &obj) |
| | Copy insert a new entry, not overwriting existing entries.
|
| bool | insert (const label &key, T &&obj) |
| | Move insert a new entry, not overwriting existing entries.
|
| bool | set (const label &key, const T &obj) |
| | Copy assign a new entry, overwriting existing entries.
|
| bool | set (const label &key, T &&obj) |
| | Move assign a new entry, overwriting existing entries.
|
| bool | erase (const iterator &iter) |
| | Erase an entry specified by given iterator.
|
| bool | erase (const label &key) |
| | Erase an entry specified by the given key.
|
| label | erase (const HashTable< AnyType, label, AnyHash > &other) |
| | Remove table entries given by keys of the other hash-table.
|
| label | erase (std::initializer_list< label > keys) |
| | Remove table entries given by the listed keys.
|
| label | erase (InputIter first, InputIter last) |
| | Remove multiple entries using an iterator range of keys.
|
| label | erase (const FixedList< label, N > &keys) |
| | Remove table entries given by the listed keys.
|
| label | erase (const UList< label > &keys) |
| | Remove table entries given by the listed keys.
|
| label | retain (const HashTable< AnyType, label, AnyHash > &other) |
| | Retain table entries given by keys of the other hash-table.
|
| label | filterKeys (const UnaryPredicate &pred, const bool pruning=false) |
| | Generalized means to filter table entries based on their keys.
|
| label | filterValues (const UnaryPredicate &pred, const bool pruning=false) |
| | Generalized means to filter table entries based on their values.
|
| label | filterEntries (const BinaryPredicate &pred, const bool pruning=false) |
| | Generalized means to filter table entries based on their key/value.
|
| void | clear () |
| | Remove all entries from table.
|
| void | clearStorage () |
| | Remove all entries from table and the table itself.
|
| void | setCapacity (label newCapacity) |
| | Change the hash table capacity (number of buckets).
|
| void | resize (label newCapacity) |
| | Rehash the hash table with new number of buckets. Currently identical to setCapacity().
|
| void | reserve (label numEntries) |
| | Reserve space for at least the specified number of elements (not the number of buckets) and regenerates the hash table.
|
| void | swap (HashTable< T, label, Hash > &rhs) noexcept |
| | Swap contents into this table.
|
| void | transfer (HashTable< T, label, Hash > &rhs) |
| | Transfer contents into this table.
|
| void | merge (HashTable< T, label, Hash > &source) |
| | Attempts to extract entries from source parameter and insert them into this, does not overwrite existing entries. The source will contains any items that could not be merged.
|
| void | merge (HashTable< T, label, Hash > &&source) |
| | Attempts to extract entries from source parameter and insert them into this, does not overwrite existing entries. The source will contains any items that could not be merged.
|
| T & | operator[] (const label &key) |
| | Find and return a hashed entry. FatalError if it does not exist.
|
| const T & | operator[] (const label &key) const |
| | Find and return a hashed entry. FatalError if it does not exist.
|
| T & | operator() (const label &key) |
| | Return existing entry or create a new entry.
|
| T & | operator() (const label &key, const T &deflt) |
| | Return existing entry or insert a new entry.
|
| void | operator= (const this_type &rhs) |
| | Copy assign.
|
| void | operator= (std::initializer_list< std::pair< label, T > > rhs) |
| | Copy assign from an initializer list.
|
| void | operator= (this_type &&rhs) |
| | Move assign.
|
| bool | operator== (const this_type &rhs) const |
| | Equality. Tables are equal if all keys and values are equal, independent of order or underlying storage size.
|
| bool | operator!= (const this_type &rhs) const |
| | The opposite of the equality operation.
|
| this_type & | operator+= (const this_type &rhs) |
| | Add entries into this HashTable.
|
| const_iterator_pair< const_key_iterator, this_type > | keys () const |
| | A const iterator begin/end pair for iterating over keys.
|
| iterator | begin () |
| | iterator set to the beginning of the HashTable
|
| const_iterator | begin () const |
| | const_iterator set to the beginning of the HashTable
|
| const_iterator | cbegin () const |
| | const_iterator set to the beginning of the HashTable
|
| iterator | end () noexcept |
| | iterator to signal the end (for any HashTable)
|
| const_iterator | end () const noexcept |
| | const_iterator to signal the end (for any HashTable)
|
| constexpr const_iterator | cend () const noexcept |
| | const_iterator to signal the end (for any HashTable)
|
| Ostream & | printInfo (Ostream &os) const |
| | Print information.
|
| Ostream & | writeKeys (Ostream &os, const label shortLen=0) const |
| | Write unordered keys (list), with line-breaks when length exceeds shortLen.
|
| bool | found (const label &key) const |
| | Same as contains().
|
| UPtrList< const node_type > | sorted () const |
| | Deprecated(2023-07) use csorted() method.
|
| Foam::List< label > | sortedToc (const Compare &comp) const |
| Foam::List< label > | tocKeys (const UnaryPredicate &pred, const bool invert) const |
| Foam::List< label > | tocValues (const UnaryPredicate &pred, const bool invert) const |
| Foam::List< label > | tocEntries (const BinaryPredicate &pred, const bool invert) const |
| Foam::label | countKeys (const UnaryPredicate &pred, const bool invert) const |
| Foam::label | countValues (const UnaryPredicate &pred, const bool invert) const |
| Foam::label | countEntries (const BinaryPredicate &pred, const bool invert) const |
| Foam::label | erase (InputIter first, InputIter last) |
| Foam::label | erase (const FixedList< label, N > &keys) |
| Foam::label | erase (const HashTable< AnyType, label, AnyHash > &other) |
| Foam::label | retain (const HashTable< AnyType, label, AnyHash > &other) |
| Foam::label | filterKeys (const UnaryPredicate &pred, const bool pruning) |
| Foam::label | filterValues (const UnaryPredicate &pred, const bool pruning) |
| Foam::label | filterEntries (const BinaryPredicate &pred, const bool pruning) |
| | ClassName ("HashTable") |
| | Declare type-name (with debug switch).
|
| constexpr | HashTableCore () noexcept=default |
| | Default construct.
|