MessagePack for C++
Loading...
Searching...
No Matches
msgpack Namespace Reference

Namespaces

namespace  adaptor
namespace  type
namespace  detail

Classes

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

Typedefs

template<template< class > class T, class... U>
using all_of = detail::all_of_imp<T<U>::value...>
template<template< class > class T, class... U>
using any_of = detail::any_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.
typedef object_handle unpacked

Enumerations

enum  parse_return {
  PARSE_SUCCESS = 2 , PARSE_EXTRA_BYTES = 1 , PARSE_CONTINUE = 0 , PARSE_PARSE_ERROR = -1 ,
  PARSE_SUCCESS = 2 , PARSE_EXTRA_BYTES = 1 , PARSE_CONTINUE = 0 , PARSE_PARSE_ERROR = -1 ,
  PARSE_STOP_VISITOR = -2
}
enum  parse_return {
  PARSE_SUCCESS = 2 , PARSE_EXTRA_BYTES = 1 , PARSE_CONTINUE = 0 , PARSE_PARSE_ERROR = -1 ,
  PARSE_SUCCESS = 2 , PARSE_EXTRA_BYTES = 1 , PARSE_CONTINUE = 0 , PARSE_PARSE_ERROR = -1 ,
  PARSE_STOP_VISITOR = -2
}

Functions

template<typename T>
msgpack::enable_if<!is_array< T >::value, msgpack::objectconst & >::type operator>> (msgpack::object const &o, T &v)
template<typename T, std::size_t N>
msgpack::object const & operator>> (msgpack::object const &o, T(&v)[N])
template<typename Stream, typename T>
msgpack::enable_if<!is_array< T >::value, msgpack::packer< Stream > & >::type operator<< (msgpack::packer< Stream > &o, T const &v)
template<typename Stream, typename T, std::size_t N>
msgpack::packer< Stream > & operator<< (msgpack::packer< Stream > &o, const T(&v)[N])
template<typename T>
msgpack::enable_if<!is_array< T >::value >::type operator<< (msgpack::object &o, T const &v)
template<typename T, std::size_t N>
void operator<< (msgpack::v1::object &o, const T(&v)[N])
template<typename T>
msgpack::enable_if<!is_array< T >::value >::type operator<< (msgpack::object::with_zone &o, T const &v)
template<typename T, std::size_t N>
void operator<< (msgpack::object::with_zone &o, const T(&v)[N])
template<typename T, std::size_t N>
void operator<< (msgpack::object &o, const T(&v)[N])
template<typename T>
uint32_t checked_get_container_size (T size)
std::size_t aligned_size (std::size_t size, std::size_t align)
msgpack::object_kvbegin (msgpack::object_map &map)
const msgpack::object_kvbegin (const msgpack::object_map &map)
msgpack::object_kvend (msgpack::object_map &map)
const msgpack::object_kvend (const msgpack::object_map &map)
msgpack::objectbegin (msgpack::object_array &array)
const msgpack::objectbegin (const msgpack::object_array &array)
msgpack::objectend (msgpack::object_array &array)
const msgpack::objectend (const msgpack::object_array &array)
std::size_t aligned_zone_size (msgpack::object const &obj)
object_handle clone (msgpack::object const &obj)
 clone object
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)
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 &v)
template<typename Stream, typename T>
void pack (Stream *s, const T &v)
 Pack the value as MessagePack format into the stream.
template<typename Stream, typename T>
void pack (Stream &s, const T &v)
 Pack the value as MessagePack format into the stream.
msgpack::object_handle unpack (const char *data, std::size_t len, std::size_t &off, bool &referenced, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
msgpack::object_handle unpack (const char *data, std::size_t len, std::size_t &off, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
msgpack::object_handle unpack (const char *data, std::size_t len, bool &referenced, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
msgpack::object_handle unpack (const char *data, std::size_t len, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
void unpack (object_handle &result, const char *data, std::size_t len, std::size_t &off, bool &referenced, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
void unpack (object_handle &result, const char *data, std::size_t len, std::size_t &off, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
void unpack (object_handle &result, const char *data, std::size_t len, bool &referenced, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
void unpack (object_handle &result, const char *data, std::size_t len, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
msgpack::object unpack (msgpack::zone &z, const char *data, std::size_t len, std::size_t &off, bool &referenced, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
msgpack::object unpack (msgpack::zone &z, const char *data, std::size_t len, std::size_t &off, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
msgpack::object unpack (msgpack::zone &z, const char *data, std::size_t len, bool &referenced, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
msgpack::object unpack (msgpack::zone &z, const char *data, std::size_t len, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer.
void unpack (object_handle *result, const char *data, std::size_t len, std::size_t *off=MSGPACK_NULLPTR, bool *referenced=MSGPACK_NULLPTR, unpack_reference_func f=MSGPACK_NULLPTR, void *user_data=MSGPACK_NULLPTR, unpack_limit const &limit=unpack_limit())
 Unpack msgpack::object from a buffer. [obsolete].
template<typename Visitor>
bool parse (const char *data, size_t len, size_t &off, Visitor &v)
 Unpack msgpack formatted data via a visitor.
template<typename Visitor>
bool parse (const char *data, size_t len, Visitor &v)
 Unpack msgpack formatted data via a visitor.
void unpack (msgpack::object_handle &result, const char *data, std::size_t len, std::size_t &off, msgpack::v3::unpack_reference_func f, void *user_data, msgpack::unpack_limit const &limit)

Typedef Documentation

◆ all_of

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

◆ any_of

template<template< class > class T, class... U>
using msgpack::any_of = detail::any_of_imp<(T<U>::value)...>

◆ 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

◆ parse_return [1/2]

Enumerator
PARSE_SUCCESS 
PARSE_EXTRA_BYTES 
PARSE_CONTINUE 
PARSE_PARSE_ERROR 
PARSE_SUCCESS 
PARSE_EXTRA_BYTES 
PARSE_CONTINUE 
PARSE_PARSE_ERROR 
PARSE_STOP_VISITOR 

◆ parse_return [2/2]

Enumerator
PARSE_SUCCESS 
PARSE_EXTRA_BYTES 
PARSE_CONTINUE 
PARSE_PARSE_ERROR 
PARSE_SUCCESS 
PARSE_EXTRA_BYTES 
PARSE_CONTINUE 
PARSE_PARSE_ERROR 
PARSE_STOP_VISITOR 

Function Documentation

◆ aligned_size()

◆ aligned_zone_size()

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

References msgpack::object_parser::parse().

Referenced by clone().

◆ begin() [1/4]

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

◆ begin() [2/4]

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

◆ begin() [3/4]

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

◆ begin() [4/4]

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

◆ checked_get_container_size()

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

References msgpack::detail::check_container_size().

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

◆ convert()

◆ end() [1/4]

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

◆ end() [2/4]

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

◆ end() [3/4]

◆ end() [4/4]

◆ 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/10]

template<typename T, std::size_t N>
void msgpack::operator<< ( msgpack::object & o,
const T(&) v[N] )

◆ operator<<() [2/10]

template<typename T>
msgpack::enable_if<!is_array< T >::value >::type msgpack::operator<< ( msgpack::object & o,
T const & v )
inline

◆ operator<<() [3/10]

template<typename T, std::size_t N>
void msgpack::operator<< ( msgpack::object::with_zone & o,
const T(&) v[N] )
inline

◆ operator<<() [4/10]

template<typename T>
msgpack::enable_if<!is_array< T >::value >::type msgpack::operator<< ( msgpack::object::with_zone & o,
T const & v )
inline

◆ operator<<() [5/10]

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

References pack().

◆ operator<<() [6/10]

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

◆ operator<<() [7/10]

template<typename Stream, typename T, std::size_t N>
msgpack::packer< Stream > & msgpack::operator<< ( msgpack::packer< Stream > & o,
const T(&) v[N] )
inline

◆ operator<<() [8/10]

template<typename Stream, typename T>
msgpack::enable_if<!is_array< T >::value, msgpack::packer< Stream > & >::type msgpack::operator<< ( msgpack::packer< Stream > & o,
T const & v )
inline

◆ operator<<() [9/10]

template<typename T, std::size_t N>
void msgpack::operator<< ( msgpack::v1::object & o,
const T(&) v[N] )
inline

◆ operator<<() [10/10]

std::ostream & msgpack::operator<< ( std::ostream & s,
const msgpack::object & v )
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>>() [1/2]

template<typename T>
msgpack::enable_if<!is_array< T >::value, msgpack::objectconst & >::type msgpack::operator>> ( msgpack::object const & o,
T & v )
inline

◆ operator>>() [2/2]

template<typename T, std::size_t N>
msgpack::object const & msgpack::operator>> ( msgpack::object const & o,
T(&) v[N] )
inline

◆ pack() [1/3]

◆ 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.

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() [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.

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_copy()

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

◆ parse() [1/2]

template<typename Visitor>
bool msgpack::parse ( const char * data,
size_t len,
size_t & off,
Visitor & v )

Unpack msgpack formatted data via a visitor.

Parameters
dataThe pointer to the buffer.
lenThe length of the buffer.
offThe offset position of the buffer. It is read and overwritten.
vThe visitor that satisfies visitor concept. https://github.com/msgpack/msgpack-c/wiki/v2_0_cpp_visitor#visitor-concept
Returns
if unpacking process finishes without error then return true, otherwise return false.

◆ parse() [2/2]

template<typename Visitor>
bool msgpack::parse ( const char * data,
size_t len,
Visitor & v )

Unpack msgpack formatted data via a visitor.

Parameters
dataThe pointer to the buffer.
lenThe length of the buffer.
vThe visitor that satisfies visitor concept. https://github.com/msgpack/msgpack-c/wiki/v2_0_cpp_visitor#visitor-concept
Returns
if unpacking process finishes without error then return true, otherwise return false.

◆ unpack() [1/14]

msgpack::object_handle msgpack::unpack ( const char * data,
std::size_t len,
bool & referenced,
unpack_reference_func f = MSGPACK_NULLPTR,
void * user_data = MSGPACK_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
object_handle that contains unpacked data.

References unpack().

◆ unpack() [2/14]

msgpack::object_handle msgpack::unpack ( const char * data,
std::size_t len,
std::size_t & off,
bool & referenced,
unpack_reference_func f = MSGPACK_NULLPTR,
void * user_data = MSGPACK_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
object_handle that contains unpacked data.

References PARSE_CONTINUE, PARSE_EXTRA_BYTES, PARSE_PARSE_ERROR, PARSE_SUCCESS, and msgpack::detail::unpack_imp().

Referenced by msgpack::type::define_array< Args... >::msgpack_unpack(), msgpack::type::define_map< Args >::msgpack_unpack(), unpack(), unpack(), unpack(), unpack(), unpack(), unpack(), unpack(), unpack(), unpack(), and unpack().

◆ unpack() [3/14]

msgpack::object_handle msgpack::unpack ( const char * data,
std::size_t len,
std::size_t & off,
unpack_reference_func f = MSGPACK_NULLPTR,
void * user_data = MSGPACK_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
object_handle that contains unpacked data.

References unpack().

◆ unpack() [4/14]

msgpack::object_handle msgpack::unpack ( const char * data,
std::size_t len,
unpack_reference_func f = MSGPACK_NULLPTR,
void * user_data = MSGPACK_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
object_handle that contains unpacked data.

References unpack().

◆ unpack() [5/14]

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

◆ unpack() [6/14]

msgpack::object msgpack::unpack ( msgpack::zone & z,
const char * data,
std::size_t len,
bool & referenced,
unpack_reference_func f = MSGPACK_NULLPTR,
void * user_data = MSGPACK_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() [7/14]

msgpack::object msgpack::unpack ( msgpack::zone & z,
const char * data,
std::size_t len,
std::size_t & off,
bool & referenced,
unpack_reference_func f = MSGPACK_NULLPTR,
void * user_data = MSGPACK_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 PARSE_CONTINUE, PARSE_EXTRA_BYTES, PARSE_PARSE_ERROR, PARSE_SUCCESS, and msgpack::detail::unpack_imp().

◆ unpack() [8/14]

msgpack::object msgpack::unpack ( msgpack::zone & z,
const char * data,
std::size_t len,
std::size_t & off,
unpack_reference_func f = MSGPACK_NULLPTR,
void * user_data = MSGPACK_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() [9/14]

msgpack::object msgpack::unpack ( msgpack::zone & z,
const char * data,
std::size_t len,
unpack_reference_func f = MSGPACK_NULLPTR,
void * user_data = MSGPACK_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() [10/14]

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

Unpack msgpack::object from a buffer.

Parameters
resultThe object_handle 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() [11/14]

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

Unpack msgpack::object from a buffer.

Parameters
resultThe object_handle 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 PARSE_CONTINUE, PARSE_EXTRA_BYTES, PARSE_PARSE_ERROR, PARSE_SUCCESS, msgpack::object_handle::set(), msgpack::detail::unpack_imp(), and msgpack::object_handle::zone().

◆ unpack() [12/14]

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

Unpack msgpack::object from a buffer.

Parameters
resultThe object_handle 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() [13/14]

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

Unpack msgpack::object from a buffer.

Parameters
resultThe object_handle 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() [14/14]

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

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

Parameters
resultThe object_handle 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().