#ifndef BOOST_METAPARSE_V1_CPP14_IMPL_ANY_OF_C_HPP #define BOOST_METAPARSE_V1_CPP14_IMPL_ANY_OF_C_HPP // Copyright Abel Sinkovics (abel@sinkovics.hu) 2017. // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt or copy at // http://www.boost.org/LICENSE_1_0.txt) #include namespace boost { namespace metaparse { namespace v1 { namespace impl { template struct any_of_c { typedef any_of_c type; static constexpr bool run(char c_) { const bool values[] = {(c_ == Cs)...}; for (const bool* i = values; i != values + sizeof...(Cs); ++i) { if (*i) { return true; } } return false; } template struct apply : boost::mpl::bool_ {}; }; template <> struct any_of_c<> { typedef any_of_c type; template struct apply : boost::mpl::false_ {}; }; } } } } #endif