Embedded Template Library 1.0
|
Functions | |
template<typename TKey , typename TMapped , typename TKeyCompare > | |
bool | etl::operator== (const etl::iunordered_multiset< TKey, TMapped, TKeyCompare > &lhs, const etl::iunordered_multiset< TKey, TMapped, TKeyCompare > &rhs) |
template<typename TKey , typename TMapped , typename TKeyCompare > | |
bool | etl::operator!= (const etl::iunordered_multiset< TKey, TMapped, TKeyCompare > &lhs, const etl::iunordered_multiset< TKey, TMapped, TKeyCompare > &rhs) |
A unordered_multiset with the capacity defined at compile time.
class etl::unordered_multiset_exception |
Exception for the unordered_multiset.
Public Member Functions | |
unordered_multiset_exception (string_type reason_, string_type file_name_, numeric_type line_number_) | |
![]() | |
ETL_CONSTEXPR | exception (string_type reason_, string_type, numeric_type line_) |
Constructor. | |
ETL_CONSTEXPR string_type | what () const |
ETL_CONSTEXPR string_type | file_name () const |
ETL_CONSTEXPR numeric_type | line_number () const |
Additional Inherited Members | |
![]() | |
typedef const char * | string_type |
typedef int | numeric_type |
class etl::unordered_multiset_full |
Full exception for the unordered_multiset.
Public Member Functions | |
unordered_multiset_full (string_type file_name_, numeric_type line_number_) | |
![]() | |
unordered_multiset_exception (string_type reason_, string_type file_name_, numeric_type line_number_) | |
![]() | |
ETL_CONSTEXPR | exception (string_type reason_, string_type, numeric_type line_) |
Constructor. | |
ETL_CONSTEXPR string_type | what () const |
ETL_CONSTEXPR string_type | file_name () const |
ETL_CONSTEXPR numeric_type | line_number () const |
Additional Inherited Members | |
![]() | |
typedef const char * | string_type |
typedef int | numeric_type |
class etl::unordered_multiset_out_of_range |
Out of range exception for the unordered_multiset.
Public Member Functions | |
unordered_multiset_out_of_range (string_type file_name_, numeric_type line_number_) | |
![]() | |
unordered_multiset_exception (string_type reason_, string_type file_name_, numeric_type line_number_) | |
![]() | |
ETL_CONSTEXPR | exception (string_type reason_, string_type, numeric_type line_) |
Constructor. | |
ETL_CONSTEXPR string_type | what () const |
ETL_CONSTEXPR string_type | file_name () const |
ETL_CONSTEXPR numeric_type | line_number () const |
Additional Inherited Members | |
![]() | |
typedef const char * | string_type |
typedef int | numeric_type |
class etl::unordered_multiset_iterator |
Iterator exception for the unordered_multiset.
Public Member Functions | |
unordered_multiset_iterator (string_type file_name_, numeric_type line_number_) | |
![]() | |
unordered_multiset_exception (string_type reason_, string_type file_name_, numeric_type line_number_) | |
![]() | |
ETL_CONSTEXPR | exception (string_type reason_, string_type, numeric_type line_) |
Constructor. | |
ETL_CONSTEXPR string_type | what () const |
ETL_CONSTEXPR string_type | file_name () const |
ETL_CONSTEXPR numeric_type | line_number () const |
Additional Inherited Members | |
![]() | |
typedef const char * | string_type |
typedef int | numeric_type |
class etl::iunordered_multiset |
The base class for specifically sized unordered_multiset. Can be used as a reference type for all unordered_multiset containing a specific type.
Public Types | |
typedef TKey | value_type |
typedef TKey | key_type |
typedef THash | hasher |
typedef TKeyEqual | key_equal |
typedef value_type & | reference |
typedef const value_type & | const_reference |
typedef value_type * | pointer |
typedef const value_type * | const_pointer |
typedef size_t | size_type |
typedef const TKey & | key_parameter_t |
typedef etl::forward_link< 0 > | link_t |
typedef bucket_t::iterator | local_iterator |
typedef bucket_t::const_iterator | const_local_iterator |
typedef etl::iterator_traits< iterator >::difference_type | difference_type |
Public Member Functions | |
iterator | begin () |
const_iterator | begin () const |
const_iterator | cbegin () const |
local_iterator | begin (size_t i) |
const_local_iterator | begin (size_t i) const |
const_local_iterator | cbegin (size_t i) const |
iterator | end () |
const_iterator | end () const |
const_iterator | cend () const |
local_iterator | end (size_t i) |
const_local_iterator | end (size_t i) const |
const_local_iterator | cend (size_t i) const |
size_type | get_bucket_index (key_parameter_t key) const |
size_type | bucket_size (key_parameter_t key) const |
size_type | max_bucket_count () const |
size_type | bucket_count () const |
template<typename TIterator > | |
void | assign (TIterator first_, TIterator last_) |
ETL_OR_STD::pair< iterator, bool > | insert (const_reference key) |
iterator | insert (const_iterator, const_reference key) |
template<class TIterator > | |
void | insert (TIterator first_, TIterator last_) |
size_t | erase (key_parameter_t key) |
iterator | erase (const_iterator ielement) |
iterator | erase (const_iterator first_, const_iterator last_) |
void | clear () |
Clears the unordered_multiset. | |
size_t | count (key_parameter_t key) const |
iterator | find (key_parameter_t key) |
const_iterator | find (key_parameter_t key) const |
ETL_OR_STD::pair< iterator, iterator > | equal_range (key_parameter_t key) |
ETL_OR_STD::pair< const_iterator, const_iterator > | equal_range (key_parameter_t key) const |
size_type | size () const |
Gets the size of the unordered_multiset. | |
size_type | max_size () const |
Gets the maximum possible size of the unordered_multiset. | |
size_type | capacity () const |
Gets the maximum possible size of the unordered_multiset. | |
bool | empty () const |
Checks to see if the unordered_multiset is empty. | |
bool | full () const |
Checks to see if the unordered_multiset is full. | |
size_t | available () const |
float | load_factor () const |
hasher | hash_function () const |
key_equal | key_eq () const |
iunordered_multiset & | operator= (const iunordered_multiset &rhs) |
Assignment operator. | |
Protected Types | |
typedef etl::intrusive_forward_list< node_t, link_t > | bucket_t |
typedef etl::ipool | pool_t |
Protected Member Functions | |
iunordered_multiset (pool_t &node_pool_, bucket_t *pbuckets_, size_t number_of_buckets_, hasher key_hash_function_, key_equal key_equal_function_) | |
Constructor. | |
void | initialise () |
Initialise the unordered_multiset. | |
~iunordered_multiset () | |
For library debugging purposes only. More... | |
Friends | |
bool | operator== (const node_t &lhs, const node_t &rhs) |
bool | operator!= (const node_t &lhs, const node_t &rhs) |
|
inlineprotected |
For library debugging purposes only.
Destructor.
|
inline |
Assigns values to the unordered_multiset. If asserts or exceptions are enabled, emits unordered_multiset_full if the unordered_multiset does not have enough free space. If asserts or exceptions are enabled, emits unordered_multiset_iterator if the iterators are reversed.
first | The iterator to the first element. |
last | The iterator to the last element + 1. |
|
inline |
Returns the remaining capacity.
|
inline |
Returns an iterator to the beginning of the unordered_multiset.
|
inline |
Returns a const_iterator to the beginning of the unordered_multiset.
|
inline |
Returns an iterator to the beginning of the unordered_multiset bucket.
|
inline |
Returns a const_iterator to the beginning of the unordered_multiset bucket.
|
inline |
Returns the number of the buckets the container holds.
|
inline |
Returns the size of the bucket key.
|
inline |
Returns a const_iterator to the beginning of the unordered_multiset.
|
inline |
Returns a const_iterator to the beginning of the unordered_multiset bucket.
|
inline |
Returns a const_iterator to the end of the unordered_multiset.
|
inline |
Returns a const_iterator to the end of the unordered_multiset bucket.
|
inline |
Counts an element.
key | The key to search for. |
|
inline |
Returns an iterator to the end of the unordered_multiset.
|
inline |
Returns a const_iterator to the end of the unordered_multiset.
|
inline |
Returns an iterator to the end of the unordered_multiset bucket.
|
inline |
Returns a const_iterator to the end of the unordered_multiset bucket.
|
inline |
Returns a range containing all elements with key key in the container. The range is defined by two iterators, the first pointing to the first element of the wanted range and the second pointing past the last element of the range.
key | The key to search for. |
|
inline |
Returns a range containing all elements with key key in the container. The range is defined by two iterators, the first pointing to the first element of the wanted range and the second pointing past the last element of the range.
key | The key to search for. |
|
inline |
Erases a range of elements. The range includes all the elements between first and last, including the element pointed by first, but not the one pointed to by last.
first | Iterator to the first element. |
last | Iterator to the last element. |
|
inline |
Erases an element.
ielement | Iterator to the element. |
|
inline |
Erases an element.
key | The key to erase. |
|
inline |
Finds an element.
key | The key to search for. |
|
inline |
Finds an element.
key | The key to search for. |
|
inline |
Returns the bucket index for the key.
|
inline |
Returns the function that hashes the keys.
|
inline |
Inserts a value to the unordered_multiset. If asserts or exceptions are enabled, emits unordered_multiset_full if the unordered_multiset is already full.
position | The position to insert at. |
value | The value to insert. |
|
inline |
Inserts a value to the unordered_multiset. If asserts or exceptions are enabled, emits unordered_multiset_full if the unordered_multiset is already full.
value | The value to insert. |
|
inline |
Inserts a range of values to the unordered_multiset. If asserts or exceptions are enabled, emits unordered_multiset_full if the unordered_multiset does not have enough free space.
position | The position to insert at. |
first | The first element to add. |
last | The last + 1 element to add. |
|
inline |
Returns the function that compares the keys.
|
inline |
Returns the load factor = size / bucket_count.
|
inline |
Returns the maximum number of the buckets the container can hold.
bool etl::operator!= | ( | const etl::iunordered_multiset< TKey, TMapped, TKeyCompare > & | lhs, |
const etl::iunordered_multiset< TKey, TMapped, TKeyCompare > & | rhs | ||
) |
Not equal operator.
lhs | Reference to the first unordered_multiset. |
rhs | Reference to the second unordered_multiset. |
bool etl::operator== | ( | const etl::iunordered_multiset< TKey, TMapped, TKeyCompare > & | lhs, |
const etl::iunordered_multiset< TKey, TMapped, TKeyCompare > & | rhs | ||
) |
Equal operator.
lhs | Reference to the first unordered_multiset. |
rhs | Reference to the second unordered_multiset. |