Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:53:38

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_NUMBER_HPP)
0008 #define BOOST_VMD_IS_NUMBER_HPP
0009 
0010 #include <boost/vmd/detail/setup.hpp>
0011 
0012 #if BOOST_PP_VARIADICS
0013 
0014 #include <boost/vmd/detail/is_number.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_NUMBER(sequence)
0026 
0027     \brief Tests whether a sequence is a Boost PP number.
0028 
0029     The macro checks to see if a sequence is a Boost PP number.
0030     A Boost PP number is a value from 0 to BOOST_PP_LIMIT_MAG.
0031     
0032     sequence = a possible number
0033 
0034     returns = 1 if the sequence is a Boost PP number,
0035               0 if it is not.
0036               
0037     If the input is not a VMD data type this macro could lead to
0038     a preprocessor error. This is because the macro
0039     uses preprocessor concatenation to determine if the input
0040     is a number once it is determined that the input does not
0041     start with parenthesis. If the data being concatenated would
0042     lead to an invalid preprocessor token the compiler can issue
0043     a preprocessor error.
0044               
0045 */
0046 
0047 #define BOOST_VMD_IS_NUMBER(sequence) \
0048     BOOST_VMD_DETAIL_IS_NUMBER(sequence) \
0049 /**/
0050 
0051 #endif /* BOOST_PP_VARIADICS */
0052 #endif /* BOOST_VMD_IS_NUMBER_HPP */