File indexing completed on 2025-01-18 09:40:49
0001 #ifndef BOOST_METAPARSE_V1_CHANGE_ERROR_MESSAGE_HPP
0002 #define BOOST_METAPARSE_V1_CHANGE_ERROR_MESSAGE_HPP
0003
0004
0005
0006
0007
0008
0009 #include <boost/metaparse/v1/is_error.hpp>
0010 #include <boost/metaparse/v1/reject.hpp>
0011
0012 #include <boost/mpl/eval_if.hpp>
0013
0014 namespace boost
0015 {
0016 namespace metaparse
0017 {
0018 namespace v1
0019 {
0020 template <class P, class Msg>
0021 struct change_error_message
0022 {
0023 template <class S, class Pos>
0024 struct apply :
0025 boost::mpl::eval_if<
0026 typename is_error<typename P::template apply<S, Pos> >::type,
0027 reject<Msg, Pos>,
0028 typename P::template apply<S, Pos>
0029 >
0030 {};
0031
0032 typedef change_error_message type;
0033 };
0034 }
0035 }
0036 }
0037
0038 #endif
0039