jaulib v1.4.1-10-ga2c96e0
Jau Support Library (C++, Java, ..)
Loading...
Searching...
No Matches
Collection Utilities

Basic collection utilities supporting std::unordered_map, std::unordered_set, etc usage. More...

Classes

class  jau::HashMapWrap< Key_type, Value_type, Novalue_type, No_value, Hash_functor, Query_type, KeyEqual, Allocator >
 HashMapWrap, generic std::unordered_map exposing a more higher level API. More...
 
struct  jau::string_hash
 C++20: Heterogeneous Lookup in (Un)ordered Containers. More...
 

Typedefs

template<typename T>
using jau::StringHashMap = std::unordered_map<std::string, T, string_hash, std::equal_to<>>
 std::unordered_map using std::string key and heterogenous jau::string_hash functor
 
template<typename Value_type, typename Novalue_type, Novalue_type no_value>
using jau::StringHashMapWrap = HashMapWrap<std::string, Value_type, Novalue_type, no_value, jau::string_hash, std::string_view>
 StringHashMapWrap, generic std::unordered_map exposing a more higher level API.
 
using jau::StringHashSet = std::unordered_set<std::string, string_hash, std::equal_to<>>
 std::unordered_set using std::string key and heterogenous jau::string_hash functor
 
template<typename K, typename V>
using jau::StringlikeHashMap = std::unordered_map<K, V, jau::string_hash, std::equal_to<>>
 std::unordered_map using K key and heterogenous jau::string_hash functor
 
template<typename T>
using jau::StringViewHashMap = std::unordered_map<std::string_view, T, string_hash, std::equal_to<>>
 std::unordered_map using std::string_view key and heterogenous jau::string_hash functor, use with care!
 
template<typename Value_type, typename Novalue_type, Novalue_type no_value>
using jau::StringViewHashMapWrap = HashMapWrap<std::string_view, Value_type, Novalue_type, no_value, jau::string_hash>
 StringHashViewMapWrap, generic std::unordered_map exposing a more higher level API, use with care!
 
using jau::StringViewHashSet = std::unordered_set<std::string_view, string_hash, std::equal_to<>>
 std::unordered_set using std::string_view key and heterogenous jau::string_hash functor, use with care!
 

Detailed Description

Basic collection utilities supporting std::unordered_map, std::unordered_set, etc usage.

Typedef Documentation

◆ StringlikeHashMap

template<typename K, typename V>
using jau::StringlikeHashMap = std::unordered_map<K, V, jau::string_hash, std::equal_to<>>

std::unordered_map using K key and heterogenous jau::string_hash functor

Definition at line 67 of file basic_collections.hpp.

◆ StringHashMap

template<typename T>
using jau::StringHashMap = std::unordered_map<std::string, T, string_hash, std::equal_to<>>

std::unordered_map using std::string key and heterogenous jau::string_hash functor

Definition at line 73 of file basic_collections.hpp.

◆ StringHashSet

using jau::StringHashSet = std::unordered_set<std::string, string_hash, std::equal_to<>>

std::unordered_set using std::string key and heterogenous jau::string_hash functor

Definition at line 78 of file basic_collections.hpp.

◆ StringViewHashMap

template<typename T>
using jau::StringViewHashMap = std::unordered_map<std::string_view, T, string_hash, std::equal_to<>>

std::unordered_map using std::string_view key and heterogenous jau::string_hash functor, use with care!

Key values must persist through the lifecycle of the map.

Definition at line 86 of file basic_collections.hpp.

◆ StringViewHashSet

using jau::StringViewHashSet = std::unordered_set<std::string_view, string_hash, std::equal_to<>>

std::unordered_set using std::string_view key and heterogenous jau::string_hash functor, use with care!

Key values must persist through the lifecycle of the set.

Definition at line 93 of file basic_collections.hpp.

◆ StringHashMapWrap

template<typename Value_type, typename Novalue_type, Novalue_type no_value>
using jau::StringHashMapWrap = HashMapWrap<std::string, Value_type, Novalue_type, no_value, jau::string_hash, std::string_view>

StringHashMapWrap, generic std::unordered_map exposing a more higher level API.

Based on HashMapWrap, using std::string key and heterogenous jau::string_hash functor

Definition at line 422 of file basic_collections.hpp.

◆ StringViewHashMapWrap

template<typename Value_type, typename Novalue_type, Novalue_type no_value>
using jau::StringViewHashMapWrap = HashMapWrap<std::string_view, Value_type, Novalue_type, no_value, jau::string_hash>

StringHashViewMapWrap, generic std::unordered_map exposing a more higher level API, use with care!

Key values must persist through the lifecycle of the map.

Based on HashMapWrap, using std::string_view key and heterogenous jau::string_hash functor

Definition at line 432 of file basic_collections.hpp.