MessagePack for C++
Toggle main menu visibility
Loading...
Searching...
No Matches
msgpack
preprocessor
repetition
enum_binary_params.hpp
Go to the documentation of this file.
1
#
/* **************************************************************************
2
# * *
3
# * (C) Copyright Paul Mensonides 2002.
4
# * Distributed under the Boost Software License, Version 1.0. (See
5
# * accompanying file LICENSE_1_0.txt or copy at
6
# * http://www.boost.org/LICENSE_1_0.txt)
7
# * *
8
# ************************************************************************** */
9
#
10
#
/* See http://www.boost.org for most recent version. */
11
#
12
# ifndef MSGPACK_PREPROCESSOR_REPETITION_ENUM_BINARY_PARAMS_HPP
13
# define MSGPACK_PREPROCESSOR_REPETITION_ENUM_BINARY_PARAMS_HPP
14
#
15
# include <
msgpack/preprocessor/cat.hpp
>
16
# include <
msgpack/preprocessor/config/config.hpp
>
17
# include <
msgpack/preprocessor/punctuation/comma_if.hpp
>
18
# include <
msgpack/preprocessor/repetition/repeat.hpp
>
19
# include <
msgpack/preprocessor/tuple/elem.hpp
>
20
# include <
msgpack/preprocessor/tuple/rem.hpp
>
21
#
22
#
/* MSGPACK_PP_ENUM_BINARY_PARAMS */
23
#
24
# if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_EDG()
25
# define MSGPACK_PP_ENUM_BINARY_PARAMS(count, p1, p2) MSGPACK_PP_REPEAT(count, MSGPACK_PP_ENUM_BINARY_PARAMS_M, (p1, p2))
26
# else
27
# define MSGPACK_PP_ENUM_BINARY_PARAMS(count, p1, p2) MSGPACK_PP_ENUM_BINARY_PARAMS_I(count, p1, p2)
28
# define MSGPACK_PP_ENUM_BINARY_PARAMS_I(count, p1, p2) MSGPACK_PP_REPEAT(count, MSGPACK_PP_ENUM_BINARY_PARAMS_M, (p1, p2))
29
# endif
30
#
31
# if MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_STRICT()
32
# define MSGPACK_PP_ENUM_BINARY_PARAMS_M(z, n, pp) MSGPACK_PP_ENUM_BINARY_PARAMS_M_IM(z, n, MSGPACK_PP_TUPLE_REM_2 pp)
33
# define MSGPACK_PP_ENUM_BINARY_PARAMS_M_IM(z, n, im) MSGPACK_PP_ENUM_BINARY_PARAMS_M_I(z, n, im)
34
# else
35
# define MSGPACK_PP_ENUM_BINARY_PARAMS_M(z, n, pp) MSGPACK_PP_ENUM_BINARY_PARAMS_M_I(z, n, MSGPACK_PP_TUPLE_ELEM(2, 0, pp), MSGPACK_PP_TUPLE_ELEM(2, 1, pp))
36
# endif
37
#
38
# if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MSVC()
39
# define MSGPACK_PP_ENUM_BINARY_PARAMS_M_I(z, n, p1, p2) MSGPACK_PP_ENUM_BINARY_PARAMS_M_II(z, n, p1, p2)
40
# define MSGPACK_PP_ENUM_BINARY_PARAMS_M_II(z, n, p1, p2) MSGPACK_PP_COMMA_IF(n) p1 ## n p2 ## n
41
# else
42
# define MSGPACK_PP_ENUM_BINARY_PARAMS_M_I(z, n, p1, p2) MSGPACK_PP_COMMA_IF(n) MSGPACK_PP_CAT(p1, n) MSGPACK_PP_CAT(p2, n)
43
# endif
44
#
45
#
/* MSGPACK_PP_ENUM_BINARY_PARAMS_Z */
46
#
47
# if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_EDG()
48
# define MSGPACK_PP_ENUM_BINARY_PARAMS_Z(z, count, p1, p2) MSGPACK_PP_REPEAT_ ## z(count, MSGPACK_PP_ENUM_BINARY_PARAMS_M, (p1, p2))
49
# else
50
# define MSGPACK_PP_ENUM_BINARY_PARAMS_Z(z, count, p1, p2) MSGPACK_PP_ENUM_BINARY_PARAMS_Z_I(z, count, p1, p2)
51
# define MSGPACK_PP_ENUM_BINARY_PARAMS_Z_I(z, count, p1, p2) MSGPACK_PP_REPEAT_ ## z(count, MSGPACK_PP_ENUM_BINARY_PARAMS_M, (p1, p2))
52
# endif
53
#
54
# endif
cat.hpp
config.hpp
comma_if.hpp
rem.hpp
repeat.hpp
elem.hpp
Generated by
1.17.0