10#ifndef MSGPACK_V1_TYPE_INT_HPP
11#define MSGPACK_V1_TYPE_INT_HPP
31 if(
o.via.u64 >
static_cast<uint64_t>(std::numeric_limits<T>::max()))
33 return static_cast<T>(
o.via.u64);
35 if(
o.via.i64 <
static_cast<int64_t>(std::numeric_limits<T>::min()))
37 return static_cast<T>(
o.via.i64);
47 if(
o.via.u64 >
static_cast<uint64_t>(std::numeric_limits<T>::max()))
49 return static_cast<T>(
o.via.u64);
57 static const bool value = std::numeric_limits<T>::is_signed;
103 {
v = type::detail::convert_integer<char>(
o);
return o; }
109 {
v = type::detail::convert_integer<wchar_t>(
o);
return o; }
115 {
v = type::detail::convert_integer<signed char>(
o);
return o; }
121 {
v = type::detail::convert_integer<signed short>(
o);
return o; }
127 {
v = type::detail::convert_integer<signed int>(
o);
return o; }
133 {
v = type::detail::convert_integer<signed long>(
o);
return o; }
139 {
v = type::detail::convert_integer<signed long long>(
o);
return o; }
146 {
v = type::detail::convert_integer<unsigned char>(
o);
return o; }
152 {
v = type::detail::convert_integer<unsigned short>(
o);
return o; }
158 {
v = type::detail::convert_integer<unsigned int>(
o);
return o; }
164 {
v = type::detail::convert_integer<unsigned long>(
o);
return o; }
170 {
v = type::detail::convert_integer<unsigned long long>(
o);
return o; }
176 template <
typename Stream>
178 {
o.pack_char(
v);
return o; }
183 template <
typename Stream>
185 {
o.pack_wchar(
v);
return o; }
190 template <
typename Stream>
192 {
o.pack_signed_char(
v);
return o; }
197 template <
typename Stream>
199 {
o.pack_short(
v);
return o; }
204 template <
typename Stream>
206 {
o.pack_int(
v);
return o; }
211 template <
typename Stream>
213 {
o.pack_long(
v);
return o; }
218 template <
typename Stream>
220 {
o.pack_long_long(
v);
return o; }
226 template <
typename Stream>
228 {
o.pack_unsigned_char(
v);
return o; }
233 template <
typename Stream>
235 {
o.pack_unsigned_short(
v);
return o; }
240 template <
typename Stream>
242 {
o.pack_unsigned_int(
v);
return o; }
247 template <
typename Stream>
249 {
o.pack_unsigned_long(
v);
return o; }
254 template <
typename Stream>
256 {
o.pack_unsigned_long_long(
v);
return o; }
263 { type::detail::object_char(
o,
v); }
269 { type::detail::object_char(
o,
v); }
276 o.type = msgpack::type::NEGATIVE_INTEGER;
280 o.type = msgpack::type::POSITIVE_INTEGER;
290 o.type = msgpack::type::NEGATIVE_INTEGER;
294 o.type = msgpack::type::POSITIVE_INTEGER;
304 o.type = msgpack::type::NEGATIVE_INTEGER;
308 o.type = msgpack::type::POSITIVE_INTEGER;
318 o.type = msgpack::type::NEGATIVE_INTEGER;
322 o.type = msgpack::type::POSITIVE_INTEGER;
332 o.type = msgpack::type::NEGATIVE_INTEGER;
336 o.type = msgpack::type::POSITIVE_INTEGER;
345 o.type = msgpack::type::POSITIVE_INTEGER;
353 o.type = msgpack::type::POSITIVE_INTEGER;
361 o.type = msgpack::type::POSITIVE_INTEGER;
369 o.type = msgpack::type::POSITIVE_INTEGER;
377 o.type = msgpack::type::POSITIVE_INTEGER;
The class template that supports continuous packing.
Definition pack.hpp:33
Definition object_fwd.hpp:231
void object_char(msgpack::object &o, T v)
Definition int.hpp:91
T convert_integer(msgpack::object const &o)
Definition int.hpp:61
@ POSITIVE_INTEGER
Definition object_fwd_decl.hpp:30
@ NEGATIVE_INTEGER
Definition object_fwd_decl.hpp:31
Definition adaptor_base.hpp:15
void convert(T &v, msgpack::object const &o)
Definition object.hpp:1178
msgpack::object const & operator()(msgpack::object const &o, char &v) const
Definition int.hpp:102
msgpack::object const & operator()(msgpack::object const &o, signed char &v) const
Definition int.hpp:114
msgpack::object const & operator()(msgpack::object const &o, signed int &v) const
Definition int.hpp:126
msgpack::object const & operator()(msgpack::object const &o, signed long &v) const
Definition int.hpp:132
msgpack::object const & operator()(msgpack::object const &o, signed long long &v) const
Definition int.hpp:138
msgpack::object const & operator()(msgpack::object const &o, signed short &v) const
Definition int.hpp:120
msgpack::object const & operator()(msgpack::object const &o, unsigned char &v) const
Definition int.hpp:145
msgpack::object const & operator()(msgpack::object const &o, unsigned int &v) const
Definition int.hpp:157
msgpack::object const & operator()(msgpack::object const &o, unsigned long &v) const
Definition int.hpp:163
msgpack::object const & operator()(msgpack::object const &o, unsigned long long &v) const
Definition int.hpp:169
msgpack::object const & operator()(msgpack::object const &o, unsigned short &v) const
Definition int.hpp:151
msgpack::object const & operator()(msgpack::object const &o, wchar_t &v) const
Definition int.hpp:108
Definition adaptor_base.hpp:27
void operator()(msgpack::object &o, char v) const
Definition int.hpp:262
void operator()(msgpack::object &o, signed char v) const
Definition int.hpp:274
void operator()(msgpack::object &o, signed int v) const
Definition int.hpp:302
void operator()(msgpack::object &o, signed long v) const
Definition int.hpp:316
void operator()(msgpack::object &o, signed long long v) const
Definition int.hpp:330
void operator()(msgpack::object &o, signed short v) const
Definition int.hpp:288
void operator()(msgpack::object &o, unsigned char v) const
Definition int.hpp:344
void operator()(msgpack::object &o, unsigned int v) const
Definition int.hpp:360
void operator()(msgpack::object &o, unsigned long v) const
Definition int.hpp:368
void operator()(msgpack::object &o, unsigned long long v) const
Definition int.hpp:376
void operator()(msgpack::object &o, unsigned short v) const
Definition int.hpp:352
void operator()(msgpack::object &o, wchar_t v) const
Definition int.hpp:268
void operator()(msgpack::object::with_zone &o, char v) const
Definition int.hpp:385
void operator()(msgpack::object::with_zone &o, signed char v) const
Definition int.hpp:399
void operator()(msgpack::object::with_zone &o, signed int v) const
Definition int.hpp:413
void operator()(msgpack::object::with_zone &o, signed long v) const
Definition int.hpp:420
void operator()(msgpack::object::with_zone &o, const signed long long &v) const
Definition int.hpp:427
void operator()(msgpack::object::with_zone &o, signed short v) const
Definition int.hpp:406
void operator()(msgpack::object::with_zone &o, unsigned char v) const
Definition int.hpp:434
void operator()(msgpack::object::with_zone &o, unsigned int v) const
Definition int.hpp:448
void operator()(msgpack::object::with_zone &o, unsigned long v) const
Definition int.hpp:455
void operator()(msgpack::object::with_zone &o, const unsigned long long &v) const
Definition int.hpp:462
void operator()(msgpack::object::with_zone &o, unsigned short v) const
Definition int.hpp:441
void operator()(msgpack::object::with_zone &o, wchar_t v) const
Definition int.hpp:392
Definition adaptor_base.hpp:43
Definition adaptor_base.hpp:38
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, char v) const
Definition int.hpp:177
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, signed char v) const
Definition int.hpp:191
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, signed int v) const
Definition int.hpp:205
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, signed long v) const
Definition int.hpp:212
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, signed long long v) const
Definition int.hpp:219
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, signed short v) const
Definition int.hpp:198
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, unsigned char v) const
Definition int.hpp:227
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, unsigned int v) const
Definition int.hpp:241
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, unsigned long v) const
Definition int.hpp:248
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, unsigned long long v) const
Definition int.hpp:255
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, unsigned short v) const
Definition int.hpp:234
msgpack::packer< Stream > & operator()(msgpack::packer< Stream > &o, wchar_t v) const
Definition int.hpp:184
Definition adaptor_base.hpp:32
Object class that corresponding to MessagePack format object.
Definition object_fwd.hpp:75
static T convert(msgpack::object const &o)
Definition int.hpp:45
static T convert(msgpack::object const &o)
Definition int.hpp:29
Definition int_decl.hpp:28
static const bool value
Definition int.hpp:57
static void make(msgpack::object &o, T v)
Definition int.hpp:84
static void make(msgpack::object &o, T v)
Definition int.hpp:69
Definition int_decl.hpp:37
#define MSGPACK_API_VERSION_NAMESPACE(ns)
Definition versioning.hpp:66