#ifndef BOOST_METAPARSE_V1_FAIL_AT_FIRST_CHAR_EXPECTED_HPP #define BOOST_METAPARSE_V1_FAIL_AT_FIRST_CHAR_EXPECTED_HPP // Copyright Abel Sinkovics (abel@sinkovics.hu) 2015. // 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 #include #include #include #include #include #include #include namespace boost { namespace metaparse { namespace v1 { template struct fail_at_first_char_expected { private: template struct apply_err : boost::mpl::eval_if< typename boost::mpl::equal_to< Pos, typename get_position >::type >::type, accept, typename P::template apply > {}; public: typedef fail_at_first_char_expected type; template struct apply : boost::mpl::eval_if< typename is_error >::type, apply_err, reject > {}; }; } } } #endif