PandA-2024.02
Macros | Typedefs
custom_map.hpp File Reference

redefinition of map to manage ordered/unordered structures More...

#include "config_HAVE_UNORDERED.hpp"
#include <map>
#include <unordered_map>
#include "absl/container/btree_map.h"
#include "absl/container/flat_hash_map.h"
#include "absl/container/node_hash_map.h"
#include "absl/hash/hash.h"
Include dependency graph for custom_map.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define NO_ABSEIL_HASH   0
 

Typedefs

template<class T , class U , class Hash = std::hash<T>, class Eq = std::equal_to<T>, class Alloc = std::allocator<std::pair<const T, U>>>
using UnorderedMapStd = std::unordered_map< T, U, Hash, Eq, Alloc >
 Autoheader include. More...
 
template<typename _Key , typename _Tp , typename _Compare = std::less<_Key>, typename _Alloc = std::allocator<std::pair<const _Key, _Tp>>>
using OrderedMapStd = std::map< _Key, _Tp, _Compare, _Alloc >
 
template<class T , class U , class Hash = typename absl::flat_hash_map<T, U>::hasher, class Eq = typename absl::flat_hash_map<T, U>::key_equal, class Alloc = std::allocator<std::pair<const T, U>>>
using CustomUnorderedMap = absl::flat_hash_map< T, U, Hash, Eq, Alloc >
 
template<class T , class U , class Hash = typename absl::flat_hash_map<T, U>::hasher, class Eq = typename absl::flat_hash_map<T, U>::key_equal, class Alloc = std::allocator<std::pair<const T, U>>>
using CustomUnorderedMapStable = absl::node_hash_map< T, U, Hash, Eq, Alloc >
 
template<class T , class U , class Hash = typename absl::flat_hash_map<T, U>::hasher, class Eq = typename absl::flat_hash_map<T, U>::key_equal, class Alloc = std::allocator<std::pair<const T, U>>>
using CustomUnorderedMapUnstable = absl::flat_hash_map< T, U, Hash, Eq, Alloc >
 
template<typename T , typename U , typename Compare = std::less<T>, typename Alloc = std::allocator<std::pair<const T, U>>>
using CustomOrderedMap = absl::btree_map< T, U, Compare, Alloc >
 
template<typename T , typename U >
using CustomMap = CustomOrderedMap< T, U >
 

Detailed Description

redefinition of map to manage ordered/unordered structures

Author
Marco Lattuada lattu.nosp@m.ada@.nosp@m.elet..nosp@m.poli.nosp@m.mi.it $Revision$ $Date$ Last modified by $Author$

Definition in file custom_map.hpp.

Macro Definition Documentation

◆ NO_ABSEIL_HASH

#define NO_ABSEIL_HASH   0

Definition at line 95 of file custom_map.hpp.

Typedef Documentation

◆ CustomMap

template<typename T , typename U >
using CustomMap = CustomOrderedMap<T, U>

Definition at line 167 of file custom_map.hpp.

◆ CustomOrderedMap

template<typename T , typename U , typename Compare = std::less<T>, typename Alloc = std::allocator<std::pair<const T, U>>>
using CustomOrderedMap = absl::btree_map<T, U, Compare, Alloc>

Definition at line 160 of file custom_map.hpp.

◆ CustomUnorderedMap

template<class T , class U , class Hash = typename absl::flat_hash_map<T, U>::hasher, class Eq = typename absl::flat_hash_map<T, U>::key_equal, class Alloc = std::allocator<std::pair<const T, U>>>
using CustomUnorderedMap = absl::flat_hash_map<T, U, Hash, Eq, Alloc>

Definition at line 148 of file custom_map.hpp.

◆ CustomUnorderedMapStable

template<class T , class U , class Hash = typename absl::flat_hash_map<T, U>::hasher, class Eq = typename absl::flat_hash_map<T, U>::key_equal, class Alloc = std::allocator<std::pair<const T, U>>>
using CustomUnorderedMapStable = absl::node_hash_map<T, U, Hash, Eq, Alloc>

Definition at line 152 of file custom_map.hpp.

◆ CustomUnorderedMapUnstable

template<class T , class U , class Hash = typename absl::flat_hash_map<T, U>::hasher, class Eq = typename absl::flat_hash_map<T, U>::key_equal, class Alloc = std::allocator<std::pair<const T, U>>>
using CustomUnorderedMapUnstable = absl::flat_hash_map<T, U, Hash, Eq, Alloc>

Definition at line 156 of file custom_map.hpp.

◆ OrderedMapStd

template<typename _Key , typename _Tp , typename _Compare = std::less<_Key>, typename _Alloc = std::allocator<std::pair<const _Key, _Tp>>>
using OrderedMapStd = std::map<_Key, _Tp, _Compare, _Alloc>

Definition at line 60 of file custom_map.hpp.

◆ UnorderedMapStd

template<class T , class U , class Hash = std::hash<T>, class Eq = std::equal_to<T>, class Alloc = std::allocator<std::pair<const T, U>>>
using UnorderedMapStd = std::unordered_map<T, U, Hash, Eq, Alloc>

Autoheader include.

Definition at line 56 of file custom_map.hpp.


Generated on Mon Feb 12 2024 13:03:34 for PandA-2024.02 by doxygen 1.8.13