Welcome to the new CppUtils documentation!
CppUtils::Container::MultiKeyMap<class... KeysAndValue>
CLASSPublic types
Section titled “Public types”ValueType
Section titled “ValueType”using CppUtils::Container::MultiKeyMap< KeysAndValue >::ValueType = std::tuple_element_t<keyCount, AllTypesTuple>;using CppUtils::Container::MultiKeyMap< KeysAndValue >::Entry = Detail::EntryStorage<PureKeysTuple, ValueType>;value_type
Section titled “value_type”using CppUtils::Container::MultiKeyMap< KeysAndValue >::value_type = Entry;size_type
Section titled “size_type”using CppUtils::Container::MultiKeyMap< KeysAndValue >::size_type = std::size_t;difference_type
Section titled “difference_type”using CppUtils::Container::MultiKeyMap< KeysAndValue >::difference_type = std::ptrdiff_t;reference
Section titled “reference”using CppUtils::Container::MultiKeyMap< KeysAndValue >::reference = Entry&;const_reference
Section titled “const_reference”using CppUtils::Container::MultiKeyMap< KeysAndValue >::const_reference = const Entry&;pointer
Section titled “pointer”using CppUtils::Container::MultiKeyMap< KeysAndValue >::pointer = Entry*;const_pointer
Section titled “const_pointer”using CppUtils::Container::MultiKeyMap< KeysAndValue >::const_pointer = const Entry*;StorageVector
Section titled “StorageVector”using CppUtils::Container::MultiKeyMap< KeysAndValue >::StorageVector = std::vector<Entry>;iterator
Section titled “iterator”using CppUtils::Container::MultiKeyMap< KeysAndValue >::iterator = typename StorageVector::iterator;const_iterator
Section titled “const_iterator”using CppUtils::Container::MultiKeyMap< KeysAndValue >::const_iterator = typename StorageVector::const_iterator;reverse_iterator
Section titled “reverse_iterator”using CppUtils::Container::MultiKeyMap< KeysAndValue >::reverse_iterator = typename StorageVector::reverse_iterator;const_reverse_iterator
Section titled “const_reverse_iterator”using CppUtils::Container::MultiKeyMap< KeysAndValue >::const_reverse_iterator = typename StorageVector::const_reverse_iterator;Public methods & functions
Section titled “Public methods & functions”template <class TargetKey>[[nodiscard]] static consteval auto MultiKeyMap::resolveKeyIndex() noexcept -> std::size_t;template <String::Hasher Tag>[[nodiscard]] static consteval auto MultiKeyMap::resolveTagPosition() noexcept -> std::size_t;explicit MultiKeyMap::MultiKeyMap(auto&&... entries) requires (sizeof...(entries) > 0 and (std::same_as<std::remove_cvref_t<decltype(entries)>, Entry> and ...));template <std::input_iterator InputIterator>MultiKeyMap::MultiKeyMap(InputIterator first, InputIterator last);auto MultiKeyMap::insert(auto&&... args) -> std::pair<iterator, bool> requires (sizeof...(args) > 1 or (sizeof...(args) == 1 and (not std::same_as<std::remove_cvref_t<decltype(args)>, Entry> and ...)));template <std::input_iterator InputIterator>auto MultiKeyMap::insert(InputIterator first, InputIterator last) -> void;template <std::size_t Index>[[nodiscard]] auto MultiKeyMap::findAt(this auto&& self, const auto& key) -> decltype(auto);template <String::Hasher Tag>[[nodiscard]] auto MultiKeyMap::find(this auto&& self, const auto& key) -> decltype(auto);template <std::size_t Index>[[nodiscard]] auto MultiKeyMap::findIteratorAt(this auto&& self, const auto& key) -> decltype(auto);template <String::Hasher Tag>[[nodiscard]] auto MultiKeyMap::findIterator(this auto&& self, const auto& key) -> decltype(auto);template <std::size_t Index>[[nodiscard]] auto MultiKeyMap::containsAt(const auto& key) const -> bool;template <String::Hasher Tag>[[nodiscard]] auto MultiKeyMap::contains(const auto& key) const -> bool;template <std::size_t Index>[[nodiscard]] auto MultiKeyMap::countAt(const auto& key) const -> std::size_t;template <String::Hasher Tag>[[nodiscard]] auto MultiKeyMap::count(const auto& key) const -> std::size_t;template <std::size_t Index>[[nodiscard]] auto MultiKeyMap::atIndex(this auto&& self, const auto& key) -> decltype(auto);template <String::Hasher Tag>[[nodiscard]] auto MultiKeyMap::at(this auto&& self, const auto& key) -> decltype(auto);auto MultiKeyMap::erase(const auto& key) requires (not std::same_as<std::remove_cvref_t<decltype(key)>, const_iterator> and not std::same_as<std::remove_cvref_t<decltype(key)>, iterator>);Public attributes
Section titled “Public attributes”keyCount
Section titled “keyCount”constexpr auto keyCount;