|
| template<typename PackType > |
| static std::size_t | size (const PackType &p, const std::unordered_map< K, T, Hash, KeyEq, Alloc > &map) |
| |
| template<typename PackType > |
| static void | to_datapack (PackType &pack, const std::unordered_map< K, T, Hash, KeyEq, Alloc > &map) |
| |
| template<typename PackType > |
| static std::unordered_map< K, T, Hash, KeyEq, Alloc > | from_datapack (const PackType &pack) |
| |
template<typename K, typename T, typename Hash, typename KeyEq, typename Alloc>
struct fpmas::io::datapack::Serializer< std::unordered_map< K, T, Hash, KeyEq, Alloc > >
std::unordered_map Serializer specialization.
| Serialization scheme |
| map.size() | item_1.key | item_1.value | item_2.key | item_2.value | ... | item_n.key | item_n.value |
- Template Parameters
-
template<typename K , typename T , typename Hash , typename KeyEq , typename Alloc >
template<typename PackType >
| static std::size_t fpmas::io::datapack::Serializer< std::unordered_map< K, T, Hash, KeyEq, Alloc > >::size |
( |
const PackType & |
p, |
|
|
const std::unordered_map< K, T, Hash, KeyEq, Alloc > & |
map |
|
) |
| |
|
inlinestatic |
Returns the buffer size required to serialize the specified map, i.e. p.size<std::size_t>()+N where N is the sum of p.size(item) for each item in map.
template<typename K , typename T , typename Hash , typename KeyEq , typename Alloc >
template<typename PackType >
| static void fpmas::io::datapack::Serializer< std::unordered_map< K, T, Hash, KeyEq, Alloc > >::to_datapack |
( |
PackType & |
pack, |
|
|
const std::unordered_map< K, T, Hash, KeyEq, Alloc > & |
map |
|
) |
| |
|
inlinestatic |
Serializes map to pack.
Each item is serialized using the PackType::put(const std::pair<K, T>&) method.
- Parameters
-
template<typename K , typename T , typename Hash , typename KeyEq , typename Alloc >
template<typename PackType >
| static std::unordered_map< K, T, Hash, KeyEq, Alloc > fpmas::io::datapack::Serializer< std::unordered_map< K, T, Hash, KeyEq, Alloc > >::from_datapack |
( |
const PackType & |
pack | ) |
|
|
inlinestatic |
Unserializes a map from pack.
Each item of the map is unserialized using the PackType::get<std::pair<K, T>>() method.
- Parameters
-
- Returns
- unserialized map