MessagePack for C++
Toggle main menu visibility
Loading...
Searching...
No Matches
msgpack
preprocessor
list
adt.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
# * See http://www.boost.org for most recent version.
10
# */
11
#
12
#
/* Revised by Paul Mensonides (2002) */
13
#
14
# ifndef MSGPACK_PREPROCESSOR_LIST_ADT_HPP
15
# define MSGPACK_PREPROCESSOR_LIST_ADT_HPP
16
#
17
# include <
msgpack/preprocessor/config/config.hpp
>
18
# include <
msgpack/preprocessor/detail/is_binary.hpp
>
19
# include <
msgpack/preprocessor/logical/compl.hpp
>
20
# include <
msgpack/preprocessor/tuple/eat.hpp
>
21
#
22
#
/* MSGPACK_PP_LIST_CONS */
23
#
24
# define MSGPACK_PP_LIST_CONS(head, tail) (head, tail)
25
#
26
#
/* MSGPACK_PP_LIST_NIL */
27
#
28
# define MSGPACK_PP_LIST_NIL MSGPACK_PP_NIL
29
#
30
#
/* MSGPACK_PP_LIST_FIRST */
31
#
32
# define MSGPACK_PP_LIST_FIRST(list) MSGPACK_PP_LIST_FIRST_D(list)
33
#
34
# if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MWCC()
35
# define MSGPACK_PP_LIST_FIRST_D(list) MSGPACK_PP_LIST_FIRST_I list
36
# else
37
# define MSGPACK_PP_LIST_FIRST_D(list) MSGPACK_PP_LIST_FIRST_I ## list
38
# endif
39
#
40
# define MSGPACK_PP_LIST_FIRST_I(head, tail) head
41
#
42
#
/* MSGPACK_PP_LIST_REST */
43
#
44
# define MSGPACK_PP_LIST_REST(list) MSGPACK_PP_LIST_REST_D(list)
45
#
46
# if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MWCC()
47
# define MSGPACK_PP_LIST_REST_D(list) MSGPACK_PP_LIST_REST_I list
48
# else
49
# define MSGPACK_PP_LIST_REST_D(list) MSGPACK_PP_LIST_REST_I ## list
50
# endif
51
#
52
# define MSGPACK_PP_LIST_REST_I(head, tail) tail
53
#
54
#
/* MSGPACK_PP_LIST_IS_CONS */
55
#
56
# if MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_BCC()
57
# define MSGPACK_PP_LIST_IS_CONS(list) MSGPACK_PP_LIST_IS_CONS_D(list)
58
# define MSGPACK_PP_LIST_IS_CONS_D(list) MSGPACK_PP_LIST_IS_CONS_ ## list
59
# define MSGPACK_PP_LIST_IS_CONS_(head, tail) 1
60
# define MSGPACK_PP_LIST_IS_CONS_MSGPACK_PP_NIL 0
61
# else
62
# define MSGPACK_PP_LIST_IS_CONS(list) MSGPACK_PP_IS_BINARY(list)
63
# endif
64
#
65
#
/* MSGPACK_PP_LIST_IS_NIL */
66
#
67
# if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_BCC()
68
# define MSGPACK_PP_LIST_IS_NIL(list) MSGPACK_PP_COMPL(MSGPACK_PP_IS_BINARY(list))
69
# else
70
# define MSGPACK_PP_LIST_IS_NIL(list) MSGPACK_PP_COMPL(MSGPACK_PP_LIST_IS_CONS(list))
71
# endif
72
#
73
# endif
compl.hpp
config.hpp
eat.hpp
is_binary.hpp
Generated by
1.17.0