messagepack implementation for embedded systems (mbed / arduino)
Dependents: hello_message_pack
is_empty.hpp
00001 # /* ************************************************************************** 00002 # * * 00003 # * (C) Copyright Paul Mensonides 2003. 00004 # * (C) Copyright Edward Diener 2014. 00005 # * Distributed under the Boost Software License, Version 1.0. (See 00006 # * accompanying file LICENSE_1_0.txt or copy at 00007 # * http://www.boost.org/LICENSE_1_0.txt) 00008 # * * 00009 # ************************************************************************** */ 00010 # 00011 # /* See http://www.boost.org for most recent version. */ 00012 # 00013 # ifndef MSGPACK_PREPROCESSOR_FACILITIES_IS_EMPTY_HPP 00014 # define MSGPACK_PREPROCESSOR_FACILITIES_IS_EMPTY_HPP 00015 # 00016 # include <msgpack/preprocessor/config/config.hpp> 00017 # 00018 # if MSGPACK_PP_VARIADICS 00019 # 00020 # include <msgpack/preprocessor/facilities/is_empty_variadic.hpp> 00021 # 00022 # else 00023 # 00024 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MSVC() && ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MWCC() 00025 # include <msgpack/preprocessor/tuple/elem.hpp> 00026 # include <msgpack/preprocessor/facilities/identity.hpp> 00027 # else 00028 # include <msgpack/preprocessor/cat.hpp> 00029 # include <msgpack/preprocessor/detail/split.hpp> 00030 # endif 00031 # 00032 # /* MSGPACK_PP_IS_EMPTY */ 00033 # 00034 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MSVC() && ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MWCC() 00035 # define MSGPACK_PP_IS_EMPTY(x) MSGPACK_PP_IS_EMPTY_I(x MSGPACK_PP_IS_EMPTY_HELPER) 00036 # define MSGPACK_PP_IS_EMPTY_I(contents) MSGPACK_PP_TUPLE_ELEM(2, 1, (MSGPACK_PP_IS_EMPTY_DEF_ ## contents())) 00037 # define MSGPACK_PP_IS_EMPTY_DEF_MSGPACK_PP_IS_EMPTY_HELPER 1, MSGPACK_PP_IDENTITY(1) 00038 # define MSGPACK_PP_IS_EMPTY_HELPER() , 0 00039 # else 00040 # if MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MSVC() 00041 # define MSGPACK_PP_IS_EMPTY(x) MSGPACK_PP_IS_EMPTY_I(MSGPACK_PP_IS_EMPTY_HELPER x ()) 00042 # define MSGPACK_PP_IS_EMPTY_I(test) MSGPACK_PP_IS_EMPTY_II(MSGPACK_PP_SPLIT(0, MSGPACK_PP_CAT(MSGPACK_PP_IS_EMPTY_DEF_, test))) 00043 # define MSGPACK_PP_IS_EMPTY_II(id) id 00044 # else 00045 # define MSGPACK_PP_IS_EMPTY(x) MSGPACK_PP_IS_EMPTY_I((MSGPACK_PP_IS_EMPTY_HELPER x ())) 00046 # define MSGPACK_PP_IS_EMPTY_I(par) MSGPACK_PP_IS_EMPTY_II ## par 00047 # define MSGPACK_PP_IS_EMPTY_II(test) MSGPACK_PP_SPLIT(0, MSGPACK_PP_CAT(MSGPACK_PP_IS_EMPTY_DEF_, test)) 00048 # endif 00049 # define MSGPACK_PP_IS_EMPTY_HELPER() 1 00050 # define MSGPACK_PP_IS_EMPTY_DEF_1 1, MSGPACK_PP_NIL 00051 # define MSGPACK_PP_IS_EMPTY_DEF_MSGPACK_PP_IS_EMPTY_HELPER 0, MSGPACK_PP_NIL 00052 # endif 00053 # 00054 # endif /* MSGPACK_PP_VARIADICS */ 00055 # 00056 # endif /* MSGPACK_PREPROCESSOR_FACILITIES_IS_EMPTY_HPP */
Generated on Tue Jul 12 2022 22:51:45 by 1.7.2