Go to the documentation of this file.
10 #ifndef MSGPACK_V2_CREATE_OBJECT_VISITOR_HPP
11 #define MSGPACK_V2_CREATE_OBJECT_VISITOR_HPP
30 m_stack.reserve(MSGPACK_EMBED_STACK_SIZE);
34 #if !defined(MSGPACK_USE_CPP03)
50 #endif // !defined(MSGPACK_USE_CPP03)
118 std::memcpy(tmp, v,
size);
134 std::memcpy(tmp, v,
size);
150 std::memcpy(tmp, v,
size);
162 if (num_elements == 0) {
193 if (num_kv_pairs == 0) {
250 #endif // MSGPACK_V2_CREATE_OBJECT_VISITOR_HPP
bool visit_positive_integer(uint64_t v)
Definition: create_object_visitor.hpp:78
Definition: create_object_visitor.hpp:26
std::size_t bin() const
Definition: unpack_decl.hpp:105
msgpack::zone & zone()
Definition: create_object_visitor.hpp:62
std::size_t ext() const
Definition: unpack_decl.hpp:106
bool start_map_value()
Definition: create_object_visitor.hpp:214
bool visit_str(const char *v, uint32_t size)
Definition: create_object_visitor.hpp:108
@ STR
Definition: object_fwd_decl.hpp:39
const char * ptr
Definition: object_fwd.hpp:39
void * allocate_align(size_t size, size_t align=MSGPACK_ZONE_ALIGN)
Definition: cpp03_zone.hpp:246
int64_t i64
Definition: object_fwd.hpp:79
bool(* unpack_reference_func)(msgpack::type::object_type type, std::size_t size, void *user_data)
The type of reference or copy judging function.
Definition: unpack_decl.hpp:74
const char * ptr
Definition: object_fwd.hpp:46
Definition: adaptor_base.hpp:15
#define MSGPACK_ZONE_ALIGNOF(type)
Definition: cpp03_zone_decl.hpp:30
const char * ptr
Definition: object_fwd.hpp:34
Definition: unpack_exception.hpp:79
bool start_map(uint32_t num_kv_pairs)
Definition: create_object_visitor.hpp:187
bool visit_bin(const char *v, uint32_t size)
Definition: create_object_visitor.hpp:124
Definition: unpack_exception.hpp:106
std::size_t depth() const
Definition: unpack_decl.hpp:107
unpack_reference_func m_func
Definition: create_object_visitor.hpp:233
@ BIN
Definition: object_fwd_decl.hpp:40
void insufficient_bytes(size_t, size_t)
Definition: create_object_visitor.hpp:228
uint32_t size
Definition: object_fwd.hpp:38
create_object_visitor(unpack_reference_func f, void *user_data, unpack_limit const &limit)
Definition: create_object_visitor.hpp:28
Definition: unpack_exception.hpp:43
@ FLOAT32
Definition: object_fwd_decl.hpp:33
bool end_map()
Definition: create_object_visitor.hpp:221
uint32_t size
Definition: object_fwd.hpp:45
bool visit_ext(const char *v, uint32_t size)
Definition: create_object_visitor.hpp:140
#define MSGPACK_API_VERSION_NAMESPACE(ns)
Definition: versioning.hpp:58
@ BOOLEAN
Definition: object_fwd_decl.hpp:30
union_type via
Definition: object_fwd.hpp:93
bool visit_float32(float v)
Definition: create_object_visitor.hpp:96
Definition: unpack_exception.hpp:70
void set_zone(msgpack::zone &zone)
Definition: create_object_visitor.hpp:63
Definition: cpp03_zone.hpp:22
msgpack::object * ptr
Definition: object_fwd.hpp:24
bool visit_negative_integer(int64_t v)
Definition: create_object_visitor.hpp:84
create_object_visitor & operator=(create_object_visitor &&other)
Definition: create_object_visitor.hpp:45
void * m_user_data
Definition: create_object_visitor.hpp:234
std::size_t str() const
Definition: unpack_decl.hpp:104
msgpack::object_map map
Definition: object_fwd.hpp:86
create_object_visitor(create_object_visitor &&other)
Definition: create_object_visitor.hpp:35
msgpack::object const & data() const
Definition: create_object_visitor.hpp:57
Definition: unpack_exception.hpp:61
bool visit_nil()
Definition: create_object_visitor.hpp:67
@ FLOAT64
Definition: object_fwd_decl.hpp:34
msgpack::zone * m_zone
Definition: create_object_visitor.hpp:238
std::size_t size(T const &t)
Definition: size_equal_only.hpp:24
bool referenced() const
Definition: create_object_visitor.hpp:64
#define MSGPACK_NULLPTR
Definition: cpp_config_decl.hpp:35
uint32_t size
Definition: object_fwd.hpp:23
@ NEGATIVE_INTEGER
Definition: object_fwd_decl.hpp:32
msgpack::object_array array
Definition: object_fwd.hpp:85
@ ARRAY
Definition: object_fwd_decl.hpp:41
unpack_limit m_limit
Definition: create_object_visitor.hpp:235
Definition: object.hpp:30
Definition: unpack_exception.hpp:34
msgpack::object_ext ext
Definition: object_fwd.hpp:89
uint32_t size
Definition: object_fwd.hpp:33
@ NIL
Definition: object_fwd_decl.hpp:29
uint64_t u64
Definition: object_fwd.hpp:78
msgpack::object_bin bin
Definition: object_fwd.hpp:88
@ EXT
Definition: object_fwd_decl.hpp:43
void init()
Definition: create_object_visitor.hpp:52
uint32_t size
Definition: object_fwd.hpp:28
bool start_map_key()
Definition: create_object_visitor.hpp:207
bool m_referenced
Definition: create_object_visitor.hpp:239
bool boolean
Definition: object_fwd.hpp:77
double f64
Definition: object_fwd.hpp:84
Definition: unpack_exception.hpp:97
void set_referenced(bool referenced)
Definition: create_object_visitor.hpp:65
std::vector< msgpack::object * > m_stack
Definition: create_object_visitor.hpp:237
bool start_array_item()
Definition: create_object_visitor.hpp:176
bool visit_boolean(bool v)
Definition: create_object_visitor.hpp:72
bool start_array(uint32_t num_elements)
Definition: create_object_visitor.hpp:156
bool end_array()
Definition: create_object_visitor.hpp:183
Object class that corresponding to MessagePack format object.
Definition: object_fwd.hpp:75
bool end_array_item()
Definition: create_object_visitor.hpp:179
msgpack::object_kv * ptr
Definition: object_fwd.hpp:29
Definition: unpack_exception.hpp:88
bool end_map_value()
Definition: create_object_visitor.hpp:217
bool visit_float64(double v)
Definition: create_object_visitor.hpp:102
std::size_t map() const
Definition: unpack_decl.hpp:103
std::size_t array() const
Definition: unpack_decl.hpp:102
msgpack::object m_obj
Definition: create_object_visitor.hpp:236
msgpack::type::object_type type
Definition: object_fwd.hpp:92
@ POSITIVE_INTEGER
Definition: object_fwd_decl.hpp:31
bool end_map_key()
Definition: create_object_visitor.hpp:210
msgpack::object_str str
Definition: object_fwd.hpp:87
@ MAP
Definition: object_fwd_decl.hpp:42
Definition: unpack_decl.hpp:87
void parse_error(size_t, size_t)
Definition: create_object_visitor.hpp:225
msgpack::zone const & zone() const
Definition: create_object_visitor.hpp:61