MessagePack for C++
unpack_decl.hpp
Go to the documentation of this file.
1//
2// MessagePack for C++ deserializing routine
3//
4// Copyright (C) 2018 KONDO Takatoshi
5//
6// Distributed under the Boost Software License, Version 1.0.
7// (See accompanying file LICENSE_1_0.txt or copy at
8// http://www.boost.org/LICENSE_1_0.txt)
9//
10#ifndef MSGPACK_V3_UNPACK_DECL_HPP
11#define MSGPACK_V3_UNPACK_DECL_HPP
12
14
15namespace msgpack {
16
20
22
23using v2::unpack_error;
24using v2::parse_error;
25using v2::insufficient_bytes;
26using v2::size_overflow;
27using v2::array_size_overflow;
28using v2::map_size_overflow;
29using v2::str_size_overflow;
30using v2::bin_size_overflow;
31using v2::ext_size_overflow;
32using v2::depth_size_overflow;
33using v2::unpack_limit;
34
35namespace detail {
36
37using v2::detail::unpack_user;
38
43
48
51
53
56
57using v2::detail::unpack_array;
59using v2::detail::unpack_map;
64
65using v2::detail::unpack_stack;
66
70
72
73using v2::detail::fix_tag;
74
75using v2::detail::value;
76
78
79} // detail
80
81
82using v2::unpacked;
83using v2::unpacker;
84using v2::basic_unpacker;
85
86namespace detail {
87
89
90} // detail
91
93
106 const char* data, std::size_t len, std::size_t& off, bool& referenced,
107 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
108
110
122 const char* data, std::size_t len, std::size_t& off,
123 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
124
126
138 const char* data, std::size_t len, bool& referenced,
139 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
140
142
153 const char* data, std::size_t len,
154 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
155
156
158
170void unpack(
172 const char* data, std::size_t len, std::size_t& off, bool& referenced,
173 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
174
176
187void unpack(
189 const char* data, std::size_t len, std::size_t& off,
190 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
191
193
204void unpack(
206 const char* data, std::size_t len, bool& referenced,
207 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
208
210
220void unpack(
222 const char* data, std::size_t len,
223 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
224
226
240 msgpack::zone& z,
241 const char* data, std::size_t len, std::size_t& off, bool& referenced,
242 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
243
245
258 msgpack::zone& z,
259 const char* data, std::size_t len, std::size_t& off,
260 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
261
263
276 msgpack::zone& z,
277 const char* data, std::size_t len, bool& referenced,
278 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
279
281
293 msgpack::zone& z,
294 const char* data, std::size_t len,
295 msgpack::unpack_reference_func f = MSGPACK_NULLPTR, void* user_data = MSGPACK_NULLPTR, msgpack::unpack_limit const& limit = unpack_limit());
296
297
299} // MSGPACK_API_VERSION_NAMESPACE(v3)
301
302} // namespace msgpack
303
304#endif // MSGPACK_V3_UNPACK_DECL_HPP
The class holds object and zone.
Definition: object.hpp:44
Definition: unpack_decl.hpp:87
Definition: cpp03_zone.hpp:30
void unpack_int32(int32_t d, msgpack::object &o)
Definition: unpack.hpp:89
void unpack_ext(unpack_user &u, const char *p, std::size_t l, msgpack::object &o)
Definition: unpack.hpp:204
void unpack_float(float d, msgpack::object &o)
Definition: unpack.hpp:97
void unpack_false(msgpack::object &o)
Definition: unpack.hpp:109
void unpack_int16(int16_t d, msgpack::object &o)
Definition: unpack.hpp:85
void unpack_str(unpack_user &u, const char *p, uint32_t l, msgpack::object &o)
Definition: unpack.hpp:166
void unpack_nil(msgpack::object &o)
Definition: unpack.hpp:103
void init_count(void *buffer)
Definition: unpack.hpp:240
parse_return unpack_imp(const char *data, std::size_t len, std::size_t &off, msgpack::zone &result_zone, msgpack::object &result, bool &referenced, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
Definition: unpack.hpp:1352
void unpack_uint64(uint64_t d, msgpack::object &o)
Definition: unpack.hpp:78
std::atomic< unsigned int > const & get_count(void *buffer)
Definition: unpack.hpp:277
void unpack_array_item(msgpack::object &c, msgpack::object const &o)
Definition: unpack.hpp:128
void decr_count(void *buffer)
Definition: unpack.hpp:249
void unpack_int64(int64_t d, msgpack::object &o)
Definition: unpack.hpp:93
void unpack_uint8(uint8_t d, msgpack::object &o)
Definition: unpack.hpp:69
void unpack_bin(unpack_user &u, const char *p, uint32_t l, msgpack::object &o)
Definition: unpack.hpp:185
void unpack_int8(int8_t d, msgpack::object &o)
Definition: unpack.hpp:81
void incr_count(void *buffer)
Definition: unpack.hpp:262
void unpack_true(msgpack::object &o)
Definition: unpack.hpp:106
void unpack_map_item(msgpack::object &c, msgpack::object const &k, msgpack::object const &v)
Definition: unpack.hpp:154
void unpack_uint16(uint16_t d, msgpack::object &o)
Definition: unpack.hpp:72
void unpack_double(double d, msgpack::object &o)
Definition: unpack.hpp:100
void unpack_uint32(uint32_t d, msgpack::object &o)
Definition: unpack.hpp:75
msgpack::enable_if< sizeof(T)==sizeof(fix_tag)>::type load(uint32_t &dst, const char *n)
Definition: unpack.hpp:293
Definition: adaptor_base.hpp:15
object_handle unpacked
Definition: unpack_decl.hpp:207
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
msgpack::object_handle unpack(const char *data, std::size_t len, std::size_t &off, bool &referenced, unpack_reference_func f, void *user_data, unpack_limit const &limit)
Unpack msgpack::object from a buffer.
Definition: unpack.hpp:1396
Object class that corresponding to MessagePack format object.
Definition: object_fwd.hpp:75
#define MSGPACK_NULLPTR
Definition: cpp_config_decl.hpp:85
#define MSGPACK_API_VERSION_NAMESPACE(ns)
Definition: versioning.hpp:66