|
||||
File indexing completed on 2025-01-30 10:02:16
0001 0002 // (C) Copyright Edward Diener 2011-2015 0003 // Use, modification and distribution are subject to the Boost Software License, 0004 // Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at 0005 // http://www.boost.org/LICENSE_1_0.txt). 0006 0007 #if !defined(BOOST_VMD_IS_EMPTY_LIST_HPP) 0008 #define BOOST_VMD_IS_EMPTY_LIST_HPP 0009 0010 #include <boost/vmd/detail/setup.hpp> 0011 0012 #if BOOST_PP_VARIADICS 0013 0014 #include <boost/vmd/detail/is_list.hpp> 0015 0016 /* 0017 0018 The succeeding comments in this file are in doxygen format. 0019 0020 */ 0021 0022 /** \file 0023 */ 0024 0025 /** \def BOOST_VMD_IS_EMPTY_LIST(sequence) 0026 0027 \brief Tests whether a sequence is an empty Boost PP list. 0028 0029 An empty Boost PP list consists of the single identifier 'BOOST_PP_NIL'. 0030 This identifier also serves as a list terminator for a non-empty list. 0031 0032 sequence = a preprocessor parameter 0033 0034 returns = 1 if the sequence is an empty Boost PP list, 0035 0 if it is not. 0036 0037 The macro will generate a preprocessing error if the input 0038 as an empty list marker, instead of being an identifier, is 0039 a preprocessor token which VMD cannot parse, as in the 0040 example '&BOOST_PP_NIL'. 0041 0042 */ 0043 0044 #define BOOST_VMD_IS_EMPTY_LIST(sequence) \ 0045 BOOST_VMD_DETAIL_IS_LIST_IS_EMPTY_LIST_PROCESS(sequence) \ 0046 /**/ 0047 0048 /** \def BOOST_VMD_IS_EMPTY_LIST_D(d,sequence) 0049 0050 \brief Tests whether a sequence is an empty Boost PP list. Re-entrant version. 0051 0052 An empty Boost PP list consists of the single identifier 'BOOST_PP_NIL'. 0053 This identifier also serves as a list terminator for a non-empty list. 0054 0055 d = The next available BOOST_PP_WHILE iteration <br/> 0056 sequence = a preprocessor parameter 0057 0058 returns = 1 if the sequence is an empty Boost PP list, 0059 0 if it is not. 0060 0061 The macro will generate a preprocessing error if the input 0062 as an empty list marker, instead of being an identifier, is 0063 a preprocessor token which VMD cannot parse, as in the 0064 example '&BOOST_PP_NIL'. 0065 0066 */ 0067 0068 #define BOOST_VMD_IS_EMPTY_LIST_D(d,sequence) \ 0069 BOOST_VMD_DETAIL_IS_LIST_IS_EMPTY_LIST_PROCESS_D(d,sequence) \ 0070 /**/ 0071 0072 #endif /* BOOST_PP_VARIADICS */ 0073 #endif /* BOOST_VMD_IS_EMPTY_LIST_HPP */
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |