MessagePack for C++
Namespaces | Classes | Typedefs | Enumerations | Functions
msgpack Namespace Reference

Namespaces

 adaptor
 
 detail
 
 type
 

Classes

struct  array_size_overflow
 
struct  bin_size_overflow
 
struct  container_size_overflow
 
class  define
 
struct  depth_size_overflow
 
struct  enable_if
 
struct  enable_if< false, T >
 
struct  ext_size_overflow
 
class  fbuffer
 
struct  gen_seq
 
struct  gen_seq< 0, Is... >
 
struct  has_as
 
struct  insufficient_bytes
 
struct  integral_constant
 
struct  is_same
 
struct  is_same< T, T >
 
struct  map_size_overflow
 
struct  MsgpackTupleAs
 
struct  MsgpackTupleAs<>
 
struct  MsgpackTupleAsImpl
 
struct  MsgpackTupleConverter
 
struct  MsgpackTupleConverter< Tuple, 0 >
 
struct  MsgpackTupleConverter< Tuple, 1 >
 
struct  MsgpackTuplePacker
 
struct  MsgpackTuplePacker< Stream, Tuple, 0 >
 
struct  MsgpackTuplePacker< Stream, Tuple, 1 >
 
struct  MsgpackTupleToObjectWithZone
 
struct  MsgpackTupleToObjectWithZone< Tuple, 0 >
 
struct  MsgpackTupleToObjectWithZone< Tuple, 1 >
 
struct  object
 Object class that corresponding to MessagePack format object. More...
 
struct  object_array
 
struct  object_bin
 
struct  object_ext
 
class  object_handle
 The class holds object and zone. More...
 
struct  object_kv
 
struct  object_map
 
struct  object_str
 
class  packer
 The class template that supports continuous packing. More...
 
struct  parse_error
 
class  sbuffer
 
struct  seq
 
struct  size_overflow
 
struct  StdTupleAs
 
struct  StdTupleAs<>
 
struct  StdTupleAsImpl
 
struct  StdTupleConverter
 
struct  StdTupleConverter< Tuple, 0 >
 
struct  StdTuplePacker
 
struct  StdTuplePacker< Stream, Tuple, 0 >
 
struct  StdTupleToObjectWithZone
 
struct  StdTupleToObjectWithZone< Tuple, 0 >
 
struct  str_size_overflow
 
class  type_error
 
struct  unique_ptr
 
struct  unpack_error
 
class  unpack_limit
 
class  unpacker
 Unpacking class for a stream deserialization. More...
 
class  vrefbuffer
 
class  zbuffer
 
class  zone
 

Typedefs

typedef integral_constant< bool, true > true_type
 
typedef integral_constant< bool, false > false_type
 
template<template< class > class T, class... U>
using all_of = detail::all_of_imp< T< U >::value... >
 
typedef bool(* unpack_reference_func) (msgpack::type::object_type type, std::size_t size, void *user_data)
 The type of reference or copy judging function. More...
 
typedef object_handle unpacked
 

Enumerations

enum  unpack_return { UNPACK_SUCCESS = 2, UNPACK_EXTRA_BYTES = 1, UNPACK_CONTINUE = 0, UNPACK_PARSE_ERROR = -1 }
 

Functions

template<typename T >
msgpack::object const & operator>> (msgpack::object const &o, T &v)
 
template<typename Stream , typename T >
msgpack::packer< Stream > & operator<< (msgpack::packer< Stream > &o, T const &v)
 
template<typename T >
void operator<< (msgpack::object &o, T const &v)
 
template<typename T >
void operator<< (msgpack::object::with_zone &o, T const &v)
 
template<typename T >
uint32_t checked_get_container_size (T size)
 
template<typename T >
T & move (T &t)
 
template<typename T >
T const & move (T const &t)
 
std::size_t aligned_size (std::size_t size, std::size_t align=MSGPACK_ZONE_ALIGN)
 
object_kvbegin (object_map &map)
 
const object_kvbegin (const object_map &map)
 
object_kvend (object_map &map)
 
const object_kvend (const object_map &map)
 
objectbegin (object_array &array)
 
const objectbegin (const object_array &array)
 
objectend (object_array &array)
 
const objectend (const object_array &array)
 
std::size_t aligned_zone_size (msgpack::object const &obj)
 
object_handle clone (msgpack::object const &obj)
 clone object More...
 
bool operator== (const msgpack::object &x, const msgpack::object &y)
 
template<typename T >
bool operator== (const msgpack::object &x, const T &y)
 
bool operator!= (const msgpack::object &x, const msgpack::object &y)
 
template<typename T >
bool operator== (const T &y, const msgpack::object &x)
 
template<typename T >
bool operator!= (const msgpack::object &x, const T &y)
 
template<typename T >
bool operator!= (const T &y, const msgpack::object &x)
 
void operator<< (msgpack::object &o, const msgpack_object &v)
 
template<typename T >
void convert (T &v, msgpack::object const &o)
 
template<typename Stream , typename T >
void pack (msgpack::packer< Stream > &o, const T &v)
 
template<typename Stream , typename T >
void pack_copy (msgpack::packer< Stream > &o, T v)
 
template<typename Stream >
msgpack::packer< Stream > & operator<< (msgpack::packer< Stream > &o, const msgpack::object &v)
 
template<typename Stream >
msgpack::packer< Stream > & operator<< (msgpack::packer< Stream > &o, const msgpack::object::with_zone &v)
 
std::ostream & operator<< (std::ostream &s, const msgpack::object &o)
 
template<typename Stream , typename T >
void pack (Stream *s, const T &v)
 Pack the value as MessagePack format into the stream. More...
 
template<typename Stream , typename T >
void pack (Stream &s, const T &v)
 Pack the value as MessagePack format into the stream. More...
 
unpacked unpack (const char *data, std::size_t len, std::size_t &off, bool &referenced, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
unpacked unpack (const char *data, std::size_t len, std::size_t &off, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
unpacked unpack (const char *data, std::size_t len, bool &referenced, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
unpacked unpack (const char *data, std::size_t len, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
void unpack (unpacked &result, const char *data, std::size_t len, std::size_t &off, bool &referenced, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
void unpack (unpacked &result, const char *data, std::size_t len, std::size_t &off, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
void unpack (unpacked &result, const char *data, std::size_t len, bool &referenced, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
void unpack (unpacked &result, const char *data, std::size_t len, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
msgpack::object unpack (msgpack::zone &z, const char *data, std::size_t len, std::size_t &off, bool &referenced, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
msgpack::object unpack (msgpack::zone &z, const char *data, std::size_t len, std::size_t &off, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
msgpack::object unpack (msgpack::zone &z, const char *data, std::size_t len, bool &referenced, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
msgpack::object unpack (msgpack::zone &z, const char *data, std::size_t len, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. More...
 
void unpack (unpacked *result, const char *data, std::size_t len, std::size_t *off=nullptr, bool *referenced=nullptr, unpack_reference_func f=nullptr, void *user_data=nullptr, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. [obsolete]. More...
 

Typedef Documentation

§ all_of

template<template< class > class T, class... U>
using msgpack::all_of = typedef detail::all_of_imp<T<U>::value...>

§ false_type

typedef integral_constant<bool, false> msgpack::false_type

§ true_type

§ unpack_reference_func

typedef bool(* msgpack::unpack_reference_func) (msgpack::type::object_type type, std::size_t size, void *user_data)

The type of reference or copy judging function.

Parameters
typemsgpack data type.
sizemsgpack data size.
user_dataThe user_data that is set by msgpack::unpack functions.
Returns
If the data should be referenced, then return true, otherwise (should be copied) false.

This function is called when unpacking STR, BIN, or EXT.

§ unpacked

Enumeration Type Documentation

§ unpack_return

Enumerator
UNPACK_SUCCESS 
UNPACK_EXTRA_BYTES 
UNPACK_CONTINUE 
UNPACK_PARSE_ERROR 

Function Documentation

§ aligned_size()

std::size_t msgpack::aligned_size ( std::size_t  size,
std::size_t  align = MSGPACK_ZONE_ALIGN 
)
inline

§ aligned_zone_size()

std::size_t msgpack::aligned_zone_size ( msgpack::object const &  obj)
inline

§ begin() [1/4]

object_kv* msgpack::begin ( object_map map)
inline

§ begin() [2/4]

const object_kv* msgpack::begin ( const object_map map)
inline

§ begin() [3/4]

object* msgpack::begin ( object_array array)
inline

§ begin() [4/4]

const object* msgpack::begin ( const object_array array)
inline

§ checked_get_container_size()

template<typename T >
uint32_t msgpack::checked_get_container_size ( size)
inline

Referenced by msgpack::adaptor::pack< const char * >::operator()(), msgpack::adaptor::object_with_zone< const char * >::operator()(), msgpack::adaptor::pack< std::vector< bool, Alloc > >::operator()(), msgpack::adaptor::pack< std::string >::operator()(), msgpack::adaptor::pack< std::array< char, N > >::operator()(), msgpack::adaptor::pack< std::array< unsigned char, N > >::operator()(), msgpack::adaptor::pack< std::tuple< Args... > >::operator()(), msgpack::adaptor::object< const char * >::operator()(), msgpack::adaptor::as< T, typename msgpack::enable_if< boost::fusion::traits::is_sequence< T >::value &&boost::mpl::fold< T, boost::mpl::bool_< true >, boost::mpl::if_< boost::mpl::and_< boost::mpl::_1, msgpack::has_as< boost::mpl::_2 > >, boost::mpl::bool_< true >, boost::mpl::bool_< false > > >::type::value >::type >::operator()(), msgpack::adaptor::object< std::string >::operator()(), msgpack::adaptor::object_with_zone< std::vector< bool, Alloc > >::operator()(), msgpack::adaptor::pack< std::forward_list< T, Alloc > >::operator()(), msgpack::adaptor::pack< std::unordered_set< Key, Hash, Compare, Alloc > >::operator()(), msgpack::adaptor::object< std::array< char, N > >::operator()(), msgpack::adaptor::object< std::array< unsigned char, N > >::operator()(), msgpack::adaptor::pack< std::list< T, Alloc > >::operator()(), msgpack::adaptor::pack< std::unordered_map< K, V, Hash, Compare, Alloc > >::operator()(), msgpack::adaptor::pack< std::deque< T, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::string >::operator()(), msgpack::adaptor::pack< std::vector< char, Alloc > >::operator()(), msgpack::adaptor::pack< std::vector< unsigned char, Alloc > >::operator()(), msgpack::adaptor::pack< std::set< T, Compare, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::forward_list< T, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::array< char, N > >::operator()(), msgpack::adaptor::object_with_zone< std::array< unsigned char, N > >::operator()(), msgpack::adaptor::pack< std::vector< T, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::unordered_set< Key, Hash, Compare, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::list< T, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::unordered_map< K, V, Hash, Compare, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::deque< T, Alloc > >::operator()(), msgpack::adaptor::object< std::vector< char, Alloc > >::operator()(), msgpack::adaptor::object< std::vector< unsigned char, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::set< T, Compare, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::vector< T, Alloc > >::operator()(), msgpack::adaptor::convert< T, typename msgpack::enable_if< boost::fusion::traits::is_sequence< T >::value >::type >::operator()(), msgpack::adaptor::pack< char[N]>::operator()(), msgpack::adaptor::pack< type::assoc_vector< K, V, Compare, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::vector< char, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::vector< unsigned char, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< char[N]>::operator()(), msgpack::adaptor::pack< std::array< T, N > >::operator()(), msgpack::adaptor::object_with_zone< type::assoc_vector< K, V, Compare, Alloc > >::operator()(), msgpack::adaptor::object< char[N]>::operator()(), msgpack::adaptor::pack< T, typename msgpack::enable_if< boost::fusion::traits::is_sequence< T >::value >::type >::operator()(), msgpack::adaptor::object_with_zone< std::array< T, N > >::operator()(), msgpack::adaptor::pack< const char[N]>::operator()(), msgpack::adaptor::pack< msgpack::type::array_ref< T > >::operator()(), msgpack::adaptor::object_with_zone< const char[N]>::operator()(), msgpack::adaptor::pack< std::unordered_multiset< Key, Hash, Compare, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< T, typename msgpack::enable_if< boost::fusion::traits::is_sequence< T >::value >::type >::operator()(), msgpack::adaptor::object_with_zone< msgpack::type::array_ref< T > >::operator()(), msgpack::adaptor::pack< std::unordered_multimap< K, V, Hash, Compare, Alloc > >::operator()(), msgpack::adaptor::object< const char[N]>::operator()(), msgpack::adaptor::object_with_zone< std::unordered_multiset< Key, Hash, Compare, Alloc > >::operator()(), msgpack::adaptor::pack< std::multiset< T, Compare, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::unordered_multimap< K, V, Hash, Compare, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::tuple< Args... > >::operator()(), msgpack::adaptor::object_with_zone< std::multiset< T, Compare, Alloc > >::operator()(), msgpack::adaptor::pack< std::map< K, V, Compare, Alloc > >::operator()(), msgpack::adaptor::object_with_zone< std::map< K, V, Compare, Alloc > >::operator()(), msgpack::adaptor::pack< std::multimap< K, V, Compare, Alloc > >::operator()(), and msgpack::adaptor::object_with_zone< std::multimap< K, V, Compare, Alloc > >::operator()().

§ clone()

object_handle msgpack::clone ( msgpack::object const &  obj)
inline

clone object

Clone (deep copy) object. The copied object is located on newly allocated zone.

Parameters
objcopy source object
Returns
object_handle that holds deep copied object and zone.

References aligned_zone_size(), move(), and msgpack::object_handle::object_handle().

§ convert()

template<typename T >
void msgpack::convert ( T &  v,
msgpack::object const &  o 
)
inline

§ end() [1/4]

object_kv* msgpack::end ( object_map map)
inline

§ end() [2/4]

const object_kv* msgpack::end ( const object_map map)
inline

§ end() [3/4]

object* msgpack::end ( object_array array)
inline

§ end() [4/4]

const object* msgpack::end ( const object_array array)
inline

§ move() [1/2]

template<typename T >
T& msgpack::move ( T &  t)

§ move() [2/2]

template<typename T >
T const& msgpack::move ( T const &  t)

§ operator!=() [1/3]

bool msgpack::operator!= ( const msgpack::object x,
const msgpack::object y 
)
inline

§ operator!=() [2/3]

template<typename T >
bool msgpack::operator!= ( const msgpack::object x,
const T &  y 
)
inline

§ operator!=() [3/3]

template<typename T >
bool msgpack::operator!= ( const T &  y,
const msgpack::object x 
)
inline

§ operator<<() [1/7]

template<typename Stream , typename T >
msgpack::packer<Stream>& msgpack::operator<< ( msgpack::packer< Stream > &  o,
T const &  v 
)
inline

§ operator<<() [2/7]

template<typename T >
void msgpack::operator<< ( msgpack::object o,
T const &  v 
)
inline

§ operator<<() [3/7]

template<typename T >
void msgpack::operator<< ( msgpack::object::with_zone o,
T const &  v 
)
inline

§ operator<<() [4/7]

void msgpack::operator<< ( msgpack::object o,
const msgpack_object &  v 
)
inline

§ operator<<() [5/7]

template<typename Stream >
msgpack::packer<Stream>& msgpack::operator<< ( msgpack::packer< Stream > &  o,
const msgpack::object v 
)
inline

§ operator<<() [6/7]

template<typename Stream >
msgpack::packer<Stream>& msgpack::operator<< ( msgpack::packer< Stream > &  o,
const msgpack::object::with_zone v 
)

§ operator<<() [7/7]

std::ostream& msgpack::operator<< ( std::ostream &  s,
const msgpack::object o 
)
inline

§ operator==() [1/3]

bool msgpack::operator== ( const msgpack::object x,
const msgpack::object y 
)
inline

§ operator==() [2/3]

template<typename T >
bool msgpack::operator== ( const msgpack::object x,
const T &  y 
)
inline

§ operator==() [3/3]

template<typename T >
bool msgpack::operator== ( const T &  y,
const msgpack::object x 
)
inline

§ operator>>()

template<typename T >
msgpack::object const& msgpack::operator>> ( msgpack::object const &  o,
T &  v 
)
inline

§ pack() [1/3]

template<typename Stream , typename T >
void msgpack::pack ( msgpack::packer< Stream > &  o,
const T &  v 
)
inline

§ pack() [2/3]

template<typename Stream , typename T >
void msgpack::pack ( Stream *  s,
const T &  v 
)
inline

Pack the value as MessagePack format into the stream.

This function template is left for compatibility. Use void pack(Stream& s, const T& v) instead of the function template.

Template Parameters
StreamAny type that have a member function Stream write(const char*, size_t s)
TAny type that is adapted to MessagePack
Parameters
sThe pointer to packing destination stream
vPacking value

References msgpack::packer< Stream >::pack().

§ pack() [3/3]

template<typename Stream , typename T >
void msgpack::pack ( Stream &  s,
const T &  v 
)
inline

Pack the value as MessagePack format into the stream.

Template Parameters
StreamAny type that have a member function Stream write(const char*, size_t s)
TAny type that is adapted to MessagePack
Parameters
sPacking destination stream
vPacking value

References msgpack::packer< Stream >::pack().

§ pack_copy()

template<typename Stream , typename T >
void msgpack::pack_copy ( msgpack::packer< Stream > &  o,
v 
)
inline

References pack().

§ unpack() [1/13]

unpacked msgpack::unpack ( const char *  data,
std::size_t  len,
std::size_t &  off,
bool &  referenced,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
dataThe pointer to the buffer.
lenThe length of the buffer.
offThe offset position of the buffer. It is read and overwritten.
referencedIf the unpacked object contains reference of the buffer, then set as true, otherwise false.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.
Returns
unpacked object that contains unpacked data.

References move(), UNPACK_CONTINUE, UNPACK_EXTRA_BYTES, msgpack::detail::unpack_imp(), UNPACK_PARSE_ERROR, and UNPACK_SUCCESS.

Referenced by unpack().

§ unpack() [2/13]

unpacked msgpack::unpack ( const char *  data,
std::size_t  len,
std::size_t &  off,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
dataThe pointer to the buffer.
lenThe length of the buffer.
offThe offset position of the buffer. It is read and overwritten.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.
Returns
unpacked object that contains unpacked data.

References unpack().

§ unpack() [3/13]

unpacked msgpack::unpack ( const char *  data,
std::size_t  len,
bool &  referenced,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
dataThe pointer to the buffer.
lenThe length of the buffer.
referencedIf the unpacked object contains reference of the buffer, then set as true, otherwise false.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.
Returns
unpacked object that contains unpacked data.

References unpack().

§ unpack() [4/13]

unpacked msgpack::unpack ( const char *  data,
std::size_t  len,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
dataThe pointer to the buffer.
lenThe length of the buffer.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.
Returns
unpacked object that contains unpacked data.

References unpack().

§ unpack() [5/13]

void msgpack::unpack ( unpacked result,
const char *  data,
std::size_t  len,
std::size_t &  off,
bool &  referenced,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
resultThe object that contains unpacked data.
dataThe pointer to the buffer.
lenThe length of the buffer.
offThe offset position of the buffer. It is read and overwritten.
referencedIf the unpacked object contains reference of the buffer, then set as true, otherwise false.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.

References move(), msgpack::object_handle::set(), UNPACK_CONTINUE, UNPACK_EXTRA_BYTES, msgpack::detail::unpack_imp(), UNPACK_PARSE_ERROR, UNPACK_SUCCESS, and msgpack::object_handle::zone().

§ unpack() [6/13]

void msgpack::unpack ( unpacked result,
const char *  data,
std::size_t  len,
std::size_t &  off,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
resultThe object that contains unpacked data.
dataThe pointer to the buffer.
lenThe length of the buffer.
offThe offset position of the buffer. It is read and overwritten.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.

References unpack().

§ unpack() [7/13]

void msgpack::unpack ( unpacked result,
const char *  data,
std::size_t  len,
bool &  referenced,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
resultThe object that contains unpacked data.
dataThe pointer to the buffer.
lenThe length of the buffer.
referencedIf the unpacked object contains reference of the buffer, then set as true, otherwise false.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.

References unpack().

§ unpack() [8/13]

void msgpack::unpack ( unpacked result,
const char *  data,
std::size_t  len,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
resultThe object that contains unpacked data.
dataThe pointer to the buffer.
lenThe length of the buffer.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.

References unpack().

§ unpack() [9/13]

msgpack::object msgpack::unpack ( msgpack::zone z,
const char *  data,
std::size_t  len,
std::size_t &  off,
bool &  referenced,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
zThe msgpack::zone that is used as a memory of unpacked msgpack objects.
dataThe pointer to the buffer.
lenThe length of the buffer.
offThe offset position of the buffer. It is read and overwritten.
referencedIf the unpacked object contains reference of the buffer, then set as true, otherwise false.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.
Returns
msgpack::object that contains unpacked data.

References UNPACK_CONTINUE, UNPACK_EXTRA_BYTES, msgpack::detail::unpack_imp(), UNPACK_PARSE_ERROR, and UNPACK_SUCCESS.

§ unpack() [10/13]

msgpack::object msgpack::unpack ( msgpack::zone z,
const char *  data,
std::size_t  len,
std::size_t &  off,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
zThe msgpack::zone that is used as a memory of unpacked msgpack objects.
dataThe pointer to the buffer.
lenThe length of the buffer.
offThe offset position of the buffer. It is read and overwritten.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.
Returns
msgpack::object that contains unpacked data.

References unpack().

§ unpack() [11/13]

msgpack::object msgpack::unpack ( msgpack::zone z,
const char *  data,
std::size_t  len,
bool &  referenced,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
zThe msgpack::zone that is used as a memory of unpacked msgpack objects.
dataThe pointer to the buffer.
lenThe length of the buffer.
referencedIf the unpacked object contains reference of the buffer, then set as true, otherwise false.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.
Returns
msgpack::object that contains unpacked data.

References unpack().

§ unpack() [12/13]

msgpack::object msgpack::unpack ( msgpack::zone z,
const char *  data,
std::size_t  len,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer.

Parameters
zThe msgpack::zone that is used as a memory of unpacked msgpack objects.
dataThe pointer to the buffer.
lenThe length of the buffer.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.
Returns
msgpack::object that contains unpacked data.

References unpack().

§ unpack() [13/13]

void msgpack::unpack ( unpacked result,
const char *  data,
std::size_t  len,
std::size_t *  off = nullptr,
bool *  referenced = nullptr,
unpack_reference_func  f = nullptr,
void *  user_data = nullptr,
unpack_limit const &  limit = unpack_limit() 
)
inline

Unpack msgpack::object from a buffer. [obsolete].

Parameters
resultThe object that contains unpacked data.
dataThe pointer to the buffer.
lenThe length of the buffer.
offThe offset position of the buffer. It is read and overwritten.
referencedIf the unpacked object contains reference of the buffer, then set as true, otherwise false.
fA judging function that msgpack::object refer to the buffer.
user_dataThis parameter is passed to f.
limitThe size limit information of msgpack::object.

This function is obsolete. Use the reference inteface version of unpack functions instead of the pointer interface version.

References unpack().