BitShares-Core
7.0.2
BitShares blockchain node software and command-line wallet software
|
Go to the documentation of this file.
31 namespace graphene {
namespace protocol {
35 template<
typename T >
43 template<
typename T >
48 template<
typename Member,
class Class, Member (Class::*member)>
58 template<
typename Stream,
typename T >
67 template<
typename Member,
class Class, Member (Class::*member)>
70 if( (
value.*member).valid() )
85 template<
typename Stream,
typename T >
108 template<
typename Member,
class Class, Member (Class::*member)>
113 typename Member::value_type temp;
115 (
value.*member) = temp;
120 (
value.*member).reset();
137 template<
typename T >
143 FC_ASSERT( max_depth > 0,
"Recursion depth exceeded!" );
147 template<
typename Member,
class Class, Member (Class::*member)>
165 template<
typename T >
182 template<
typename T >
187 template<
typename Member,
class Class, Member (Class::*member)>
190 if( (
value.*member).valid() )
198 template<
typename T >
208 template<
typename Stream,
typename T >
221 template<
typename Stream,
typename T >
238 static std::string n = std::string(
"graphene::protocol::extension<")
iterator find(const string &key) const
#define FC_PACK_MAX_DEPTH
An order-perserving dictionary of variant's.
graphene_extension_from_variant_visitor(const variant_object &v, T &val, uint32_t max_depth)
void unpack(Stream &s, flat_set< T, A... > &value, uint32_t _max_depth)
void maybe_read_next_which() const
void operator()(const char *name) const
graphene_extension_to_variant_visitor(const T &v, uint32_t max_depth)
void operator()(const char *name) const
void from_variant(const variant &var, flat_set< T, A... > &vo, uint32_t _max_depth)
Defines types and macros used to provide reflection.
void operator()(const char *name) const
limited_mutable_variant_object mvo
void operator()(const char *name) const
void to_variant(const flat_set< T, A... > &var, variant &vo, uint32_t _max_depth)
graphene_extension_pack_read_visitor(Stream &s, const T &v, uint32_t _max_depth)
graphene_extension_unpack_visitor(Stream &s, T &v, uint32_t _max_depth)
void operator()(const char *name) const
#define FC_ASSERT(TEST,...)
Checks a condition and throws an assert_exception if the test is FALSE.
variant_object & get_object()
stores null, int64, uint64, double, bool, string, std::vector<variant>, and variant_object's.
Defines exception's used by fc.
graphene_extension_pack_count_visitor(const T &v)
defines visit functions for T Unless this is specialized, visit() will not be defined for T.
const variant_object & vo
static const char * name()
const uint32_t _max_depth
void pack(Stream &s, const flat_set< T, A... > &value, uint32_t _max_depth)