Wire Sysio Wire Sysion 1.0.0
Loading...
Searching...
No Matches
fc::raw::detail Namespace Reference

Classes

struct  if_class
 
struct  if_class< fc::false_type >
 
struct  if_enum
 
struct  if_enum< fc::true_type >
 
struct  if_reflected
 
struct  if_reflected< fc::true_type >
 
struct  pack_object_visitor
 
struct  unpack_object_visitor
 

Functions

template<template< typename... > class Set, typename Stream , typename T , typename... U>
void pack_set (Stream &s, const Set< T, U... > &value)
 
template<template< typename... > class Set, typename Stream , typename T , typename... U>
void unpack_set (Stream &s, Set< T, U... > &value)
 
template<template< typename... > class Set, typename Stream , typename T , typename... U>
void unpack_flat_set (Stream &s, Set< T, U... > &value)
 
template<template< typename... > class Map, typename Stream , typename K , typename V , typename... U>
void pack_map (Stream &s, const Map< K, V, U... > &value)
 
template<template< typename... > class Map, typename Stream , typename K , typename V , typename... U>
void unpack_map (Stream &s, Map< K, V, U... > &value)
 
template<template< typename... > class Map, typename Stream , typename K , typename V , typename... U>
void unpack_flat_map (Stream &s, Map< K, V, U... > &value)
 

Function Documentation

◆ pack_map()

template<template< typename... > class Map, typename Stream , typename K , typename V , typename... U>
void fc::raw::detail::pack_map ( Stream & s,
const Map< K, V, U... > & value )
inline

Definition at line 47 of file container_detail.hpp.

47 {
49 pack( s, unsigned_int((uint32_t)value.size()) );
50 for( const auto& item : value ) {
51 pack( s, item );
52 }
53 }
#define FC_ASSERT(TEST,...)
Checks a condition and throws an assert_exception if the test is FALSE.
#define value
Definition pkcs11.h:157
unsigned int uint32_t
Definition stdint.h:126
#define MAX_NUM_ARRAY_ELEMENTS
Definition utility.hpp:18
char * s
Here is the call graph for this function:
Here is the caller graph for this function:

◆ pack_set()

template<template< typename... > class Set, typename Stream , typename T , typename... U>
void fc::raw::detail::pack_set ( Stream & s,
const Set< T, U... > & value )
inline

Definition at line 13 of file container_detail.hpp.

13 {
15 pack( s, unsigned_int((uint32_t)value.size()) );
16 for( const auto& item : value ) {
17 pack( s, item );
18 }
19 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ unpack_flat_map()

template<template< typename... > class Map, typename Stream , typename K , typename V , typename... U>
void fc::raw::detail::unpack_flat_map ( Stream & s,
Map< K, V, U... > & value )
inline

Definition at line 68 of file container_detail.hpp.

68 {
69 unsigned_int size; unpack( s, size );
71 value.clear();
72 value.reserve( size.value );
73 for( uint32_t i = 0; i < size.value; ++i ) {
75 unpack( s, tmp );
76 value.insert( value.end(), std::move(tmp) );
77 }
78 }
std::pair< T1, T2 > default_construct_pair_maybe_with_allocator(A &&allocator)
Definition utility.hpp:124
void unpack(Stream &s, std::deque< T > &value)
Definition raw.hpp:540
uint32_t value
Definition varint.hpp:17
Here is the call graph for this function:
Here is the caller graph for this function:

◆ unpack_flat_set()

template<template< typename... > class Set, typename Stream , typename T , typename... U>
void fc::raw::detail::unpack_flat_set ( Stream & s,
Set< T, U... > & value )
inline

Definition at line 34 of file container_detail.hpp.

34 {
35 unsigned_int size; unpack( s, size );
37 value.clear();
38 value.reserve( size.value );
39 for( uint32_t i = 0; i < size.value; ++i ) {
40 auto tmp = ::fc::detail::construct_maybe_with_allocator<T>( value.get_allocator() );
41 unpack( s, tmp );
42 value.insert( value.end(), std::move(tmp) );
43 }
44 }
auto construct_maybe_with_allocator(A &&allocator, Args &&... args) -> std::enable_if_t< supports_allocator< T, A >::value &&supports_allocator< T, A >::leading_allocator, T >
Definition utility.hpp:60
Here is the call graph for this function:
Here is the caller graph for this function:

◆ unpack_map()

template<template< typename... > class Map, typename Stream , typename K , typename V , typename... U>
void fc::raw::detail::unpack_map ( Stream & s,
Map< K, V, U... > & value )
inline

Definition at line 56 of file container_detail.hpp.

56 {
57 unsigned_int size; unpack( s, size );
59 value.clear();
60 for( uint32_t i = 0; i < size.value; ++i ) {
62 unpack( s, tmp );
63 value.insert( value.end(), std::move(tmp) );
64 }
65 }
Here is the call graph for this function:
Here is the caller graph for this function:

◆ unpack_set()

template<template< typename... > class Set, typename Stream , typename T , typename... U>
void fc::raw::detail::unpack_set ( Stream & s,
Set< T, U... > & value )
inline

Definition at line 22 of file container_detail.hpp.

22 {
23 unsigned_int size; unpack( s, size );
25 value.clear();
26 for( uint32_t i = 0; i < size.value; ++i ) {
27 auto tmp = ::fc::detail::construct_maybe_with_allocator<T>( value.get_allocator() );
28 unpack( s, tmp );
29 value.insert( value.end(), std::move(tmp) );
30 }
31 }
Here is the call graph for this function:
Here is the caller graph for this function: