| 1 | #ifndef BOOST_METAPARSE_V1_CPP14_ONE_OF_C_HPP |
|---|---|
| 2 | #define BOOST_METAPARSE_V1_CPP14_ONE_OF_C_HPP |
| 3 | |
| 4 | // Copyright Abel Sinkovics (abel@sinkovics.hu) 2017. |
| 5 | // Distributed under the Boost Software License, Version 1.0. |
| 6 | // (See accompanying file LICENSE_1_0.txt or copy at |
| 7 | // http://www.boost.org/LICENSE_1_0.txt) |
| 8 | |
| 9 | #include <boost/metaparse/v1/one_char.hpp> |
| 10 | #include <boost/metaparse/v1/accept_when.hpp> |
| 11 | #include <boost/metaparse/v1/error/none_of_the_expected_cases_found.hpp> |
| 12 | #include <boost/metaparse/v1/cpp14/impl/any_of_c.hpp> |
| 13 | |
| 14 | #include <boost/mpl/eval_if.hpp> |
| 15 | |
| 16 | namespace boost |
| 17 | { |
| 18 | namespace metaparse |
| 19 | { |
| 20 | namespace v1 |
| 21 | { |
| 22 | template <char... Cs> |
| 23 | struct one_of_c : |
| 24 | accept_when< |
| 25 | one_char, |
| 26 | impl::any_of_c<Cs...>, |
| 27 | error::none_of_the_expected_cases_found |
| 28 | > |
| 29 | {}; |
| 30 | } |
| 31 | } |
| 32 | } |
| 33 | |
| 34 | #endif |
| 35 | |
| 36 |
