MessagePack for C++
Toggle main menu visibility
Loading...
Searching...
No Matches
msgpack
preprocessor
list
to_tuple.hpp
Go to the documentation of this file.
1
#
/* Copyright (C) 2001
2
# * Housemarque Oy
3
# * http://www.housemarque.com
4
# *
5
# * Distributed under the Boost Software License, Version 1.0. (See
6
# * accompanying file LICENSE_1_0.txt or copy at
7
# * http://www.boost.org/LICENSE_1_0.txt)
8
# */
9
#
10
#
/* Revised by Paul Mensonides (2002) */
11
#
12
#
/* See http://www.boost.org for most recent version. */
13
#
14
# ifndef MSGPACK_PREPROCESSOR_LIST_TO_TUPLE_HPP
15
# define MSGPACK_PREPROCESSOR_LIST_TO_TUPLE_HPP
16
#
17
# include <
msgpack/preprocessor/config/config.hpp
>
18
# include <
msgpack/preprocessor/list/enum.hpp
>
19
# include <
msgpack/preprocessor/control/iif.hpp
>
20
#
21
#
/* MSGPACK_PP_LIST_TO_TUPLE */
22
#
23
# define MSGPACK_PP_LIST_TO_TUPLE(list) \
24
MSGPACK_PP_IIF \
25
( \
26
MSGPACK_PP_LIST_IS_NIL(list), \
27
MSGPACK_PP_LIST_TO_TUPLE_EMPTY, \
28
MSGPACK_PP_LIST_TO_TUPLE_DO \
29
) \
30
(list) \
31
/**/
32
# define MSGPACK_PP_LIST_TO_TUPLE_EMPTY(list)
33
#
34
# if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_EDG()
35
# define MSGPACK_PP_LIST_TO_TUPLE_DO(list) (MSGPACK_PP_LIST_ENUM(list))
36
# else
37
# define MSGPACK_PP_LIST_TO_TUPLE_DO(list) MSGPACK_PP_LIST_TO_TUPLE_I(list)
38
# define MSGPACK_PP_LIST_TO_TUPLE_I(list) (MSGPACK_PP_LIST_ENUM(list))
39
# endif
40
#
41
#
/* MSGPACK_PP_LIST_TO_TUPLE_R */
42
#
43
# define MSGPACK_PP_LIST_TO_TUPLE_R(r, list) \
44
MSGPACK_PP_IIF \
45
( \
46
MSGPACK_PP_LIST_IS_NIL(list), \
47
MSGPACK_PP_LIST_TO_TUPLE_R_EMPTY, \
48
MSGPACK_PP_LIST_TO_TUPLE_R_DO \
49
) \
50
(r, list) \
51
/**/
52
# define MSGPACK_PP_LIST_TO_TUPLE_R_EMPTY(r,list)
53
#
54
# if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_EDG()
55
# define MSGPACK_PP_LIST_TO_TUPLE_R_DO(r, list) (MSGPACK_PP_LIST_ENUM_R(r, list))
56
# else
57
# define MSGPACK_PP_LIST_TO_TUPLE_R_DO(r, list) MSGPACK_PP_LIST_TO_TUPLE_R_I(r, list)
58
# define MSGPACK_PP_LIST_TO_TUPLE_R_I(r, list) (MSGPACK_PP_LIST_ENUM_R(r, list))
59
# endif
60
#
61
# endif
config.hpp
iif.hpp
enum.hpp
Generated by
1.17.0