1 #ifndef BOOST_METAPARSE_V1_ENTIRE_INPUT_HPP 2 #define BOOST_METAPARSE_V1_ENTIRE_INPUT_HPP 3 4 // Copyright Abel Sinkovics (abel@sinkovics.hu) 2011. 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/first_of.hpp> 10 #include <boost/metaparse/v1/empty.hpp> 11 #include <boost/metaparse/v1/change_error_message.hpp> 12 13 namespace boost 14 { 15 namespace metaparse 16 { 17 namespace v1 18 { 19 template <class P, class Msg = error::end_of_input_expected> 20 struct entire_input : 21 first_of<P, change_error_message<empty<void>, Msg> > 22 {}; 23 24 template <class P> 25 struct entire_input<P, error::end_of_input_expected> : 26 first_of<P, empty<void> > 27 {}; 28 } 29 } 30 } 31 32 #endif 33 34