diff options
Diffstat (limited to 'third_party/msgpack/include/msgpack/preprocessor/control/iif.hpp')
-rw-r--r-- | third_party/msgpack/include/msgpack/preprocessor/control/iif.hpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/third_party/msgpack/include/msgpack/preprocessor/control/iif.hpp b/third_party/msgpack/include/msgpack/preprocessor/control/iif.hpp new file mode 100644 index 0000000000..45fc61aede --- /dev/null +++ b/third_party/msgpack/include/msgpack/preprocessor/control/iif.hpp @@ -0,0 +1,34 @@ +# /* ************************************************************************** +# * * +# * (C) Copyright Paul Mensonides 2002. +# * Distributed under the Boost Software License, Version 1.0. (See +# * accompanying file LICENSE_1_0.txt or copy at +# * http://www.boost.org/LICENSE_1_0.txt) +# * * +# ************************************************************************** */ +# +# /* See http://www.boost.org for most recent version. */ +# +# ifndef MSGPACK_PREPROCESSOR_CONTROL_IIF_HPP +# define MSGPACK_PREPROCESSOR_CONTROL_IIF_HPP +# +# include <msgpack/preprocessor/config/config.hpp> +# +# if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MWCC() +# define MSGPACK_PP_IIF(bit, t, f) MSGPACK_PP_IIF_I(bit, t, f) +# else +# define MSGPACK_PP_IIF(bit, t, f) MSGPACK_PP_IIF_OO((bit, t, f)) +# define MSGPACK_PP_IIF_OO(par) MSGPACK_PP_IIF_I ## par +# endif +# +# if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MSVC() +# define MSGPACK_PP_IIF_I(bit, t, f) MSGPACK_PP_IIF_ ## bit(t, f) +# else +# define MSGPACK_PP_IIF_I(bit, t, f) MSGPACK_PP_IIF_II(MSGPACK_PP_IIF_ ## bit(t, f)) +# define MSGPACK_PP_IIF_II(id) id +# endif +# +# define MSGPACK_PP_IIF_0(t, f) f +# define MSGPACK_PP_IIF_1(t, f) t +# +# endif |