/*============================================================================= Copyright (c) 2001-2014 Joel de Guzman 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) ==============================================================================*/ #if !defined(BOOST_SPIRIT_X3_CHAR_PARSER_APR_16_2006_0906AM) #define BOOST_SPIRIT_X3_CHAR_PARSER_APR_16_2006_0906AM #include #include #include #include namespace boost { namespace spirit { namespace x3 { /////////////////////////////////////////////////////////////////////////// // The base char_parser /////////////////////////////////////////////////////////////////////////// template struct char_parser : parser { template bool parse( Iterator& first, Iterator const& last , Context const& context, unused_type, Attribute& attr) const { x3::skip_over(first, last, context); if (first != last && this->derived().test(*first, context)) { x3::traits::move_to(*first, attr); ++first; return true; } return false; } }; }}} #endif