MessagePack for C++
include
msgpack
v1
pack_decl.hpp
Go to the documentation of this file.
1
//
2
// MessagePack for C++ serializing routine
3
//
4
// Copyright (C) 2008-2016 FURUHASHI Sadayuki and 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_V1_PACK_DECL_HPP
11
#define MSGPACK_V1_PACK_DECL_HPP
12
13
#include "
msgpack/versioning.hpp
"
14
#include "
msgpack/cpp_config.hpp
"
15
#include "msgpack/sysdep.h"
16
17
namespace
msgpack
{
18
20
MSGPACK_API_VERSION_NAMESPACE
(v1) {
22
24
28
template
<
typename
Stream>
29
class
packer;
30
32
41
template
<
typename
Stream,
typename
T>
42
void
pack
(Stream* s,
const
T& v);
43
45
51
template
<
typename
Stream,
typename
T>
52
void
pack
(Stream& s,
const
T& v);
53
54
#if MSGPACK_ENDIAN_LITTLE_BYTE
55
template
<
typename
T>
56
char
take8_8(T d);
57
58
template
<
typename
T>
59
char
take8_16(T d);
60
61
template
<
typename
T>
62
char
take8_32(T d);
63
64
template
<
typename
T>
65
char
take8_64(T d);
66
67
#elif MSGPACK_ENDIAN_BIG_BYTE
68
69
template
<
typename
T>
70
char
take8_8(T d);
71
72
template
<
typename
T>
73
char
take8_16(T d);
74
75
template
<
typename
T>
76
char
take8_32(T d);
77
78
template
<
typename
T>
79
char
take8_64(T d);
80
81
#else
82
#error msgpack-c supports only big endian and little endian
83
#endif
84
86
}
// MSGPACK_API_VERSION_NAMESPACE(v1)
88
89
}
// namespace msgpack
90
91
#endif // MSGPACK_V1_PACK_DECL_HPP
msgpack
Definition:
adaptor_base.hpp:15
MSGPACK_API_VERSION_NAMESPACE
#define MSGPACK_API_VERSION_NAMESPACE(ns)
Definition:
versioning.hpp:58
msgpack::pack
void pack(msgpack::packer< Stream > &o, const T &v)
Definition:
object.hpp:1201
versioning.hpp
cpp_config.hpp
Generated by
1.8.17