Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:40:48

0001 #ifndef BOOST_METAPARSE_V1_CPP98_REPEATED_ONE_OF1_HPP
0002 #define BOOST_METAPARSE_V1_CPP98_REPEATED_ONE_OF1_HPP
0003 
0004 // Copyright Abel Sinkovics (abel@sinkovics.hu)  2010.
0005 // Distributed under the Boost Software License, Version 1.0.
0006 //    (See accompanying file LICENSE_1_0.txt or copy at
0007 //          http://www.boost.org/LICENSE_1_0.txt)
0008 
0009 #include <boost/metaparse/limit_one_of_size.hpp>
0010 #include <boost/metaparse/v1/cpp98/impl/one_of.hpp>
0011 #include <boost/metaparse/v1/repeated1.hpp>
0012 
0013 #include <boost/mpl/vector.hpp>
0014 
0015 #include <boost/preprocessor/repetition/enum_params.hpp>
0016 #include <boost/preprocessor/repetition/enum_params_with_a_default.hpp>
0017 
0018 namespace boost
0019 {
0020   namespace metaparse
0021   {
0022     namespace v1
0023     {
0024       template <
0025         BOOST_PP_ENUM_PARAMS_WITH_A_DEFAULT(
0026           BOOST_METAPARSE_LIMIT_ONE_OF_SIZE,
0027           class P,
0028           boost::mpl::na
0029         )
0030       >
0031       struct repeated_one_of1 :
0032         repeated1<
0033           impl::one_of<
0034             boost::mpl::vector<
0035               BOOST_PP_ENUM_PARAMS(BOOST_METAPARSE_LIMIT_ONE_OF_SIZE, P)
0036             >
0037           >
0038         >
0039       {};
0040     }
0041   }
0042 }
0043 
0044 #endif
0045