messagepack implementation for embedded systems (mbed / arduino)
Dependents: hello_message_pack
adt.hpp
00001 # /* Copyright (C) 2001 00002 # * Housemarque Oy 00003 # * http://www.housemarque.com 00004 # * 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 # * See http://www.boost.org for most recent version. 00010 # */ 00011 # 00012 # /* Revised by Paul Mensonides (2002) */ 00013 # 00014 # ifndef MSGPACK_PREPROCESSOR_LIST_ADT_HPP 00015 # define MSGPACK_PREPROCESSOR_LIST_ADT_HPP 00016 # 00017 # include <msgpack/preprocessor/config/config.hpp> 00018 # include <msgpack/preprocessor/detail/is_binary.hpp> 00019 # include <msgpack/preprocessor/logical/compl.hpp> 00020 # include <msgpack/preprocessor/tuple/eat.hpp> 00021 # 00022 # /* MSGPACK_PP_LIST_CONS */ 00023 # 00024 # define MSGPACK_PP_LIST_CONS(head, tail) (head, tail) 00025 # 00026 # /* MSGPACK_PP_LIST_NIL */ 00027 # 00028 # define MSGPACK_PP_LIST_NIL MSGPACK_PP_NIL 00029 # 00030 # /* MSGPACK_PP_LIST_FIRST */ 00031 # 00032 # define MSGPACK_PP_LIST_FIRST(list) MSGPACK_PP_LIST_FIRST_D(list) 00033 # 00034 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MWCC() 00035 # define MSGPACK_PP_LIST_FIRST_D(list) MSGPACK_PP_LIST_FIRST_I list 00036 # else 00037 # define MSGPACK_PP_LIST_FIRST_D(list) MSGPACK_PP_LIST_FIRST_I ## list 00038 # endif 00039 # 00040 # define MSGPACK_PP_LIST_FIRST_I(head, tail) head 00041 # 00042 # /* MSGPACK_PP_LIST_REST */ 00043 # 00044 # define MSGPACK_PP_LIST_REST(list) MSGPACK_PP_LIST_REST_D(list) 00045 # 00046 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_MWCC() 00047 # define MSGPACK_PP_LIST_REST_D(list) MSGPACK_PP_LIST_REST_I list 00048 # else 00049 # define MSGPACK_PP_LIST_REST_D(list) MSGPACK_PP_LIST_REST_I ## list 00050 # endif 00051 # 00052 # define MSGPACK_PP_LIST_REST_I(head, tail) tail 00053 # 00054 # /* MSGPACK_PP_LIST_IS_CONS */ 00055 # 00056 # if MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_BCC() 00057 # define MSGPACK_PP_LIST_IS_CONS(list) MSGPACK_PP_LIST_IS_CONS_D(list) 00058 # define MSGPACK_PP_LIST_IS_CONS_D(list) MSGPACK_PP_LIST_IS_CONS_ ## list 00059 # define MSGPACK_PP_LIST_IS_CONS_(head, tail) 1 00060 # define MSGPACK_PP_LIST_IS_CONS_MSGPACK_PP_NIL 0 00061 # else 00062 # define MSGPACK_PP_LIST_IS_CONS(list) MSGPACK_PP_IS_BINARY(list) 00063 # endif 00064 # 00065 # /* MSGPACK_PP_LIST_IS_NIL */ 00066 # 00067 # if ~MSGPACK_PP_CONFIG_FLAGS() & MSGPACK_PP_CONFIG_BCC() 00068 # define MSGPACK_PP_LIST_IS_NIL(list) MSGPACK_PP_COMPL(MSGPACK_PP_IS_BINARY(list)) 00069 # else 00070 # define MSGPACK_PP_LIST_IS_NIL(list) MSGPACK_PP_COMPL(MSGPACK_PP_LIST_IS_CONS(list)) 00071 # endif 00072 # 00073 # endif
Generated on Tue Jul 12 2022 22:51:44 by 1.7.2