1[#digit] 2[section digit] 3 4[h1 Synopsis] 5 6 struct digit; 7 8This is a [link parser parser]. 9 10[h1 Description] 11 12Parser accepting one character in the range `0-9`. The 13result of the parser is the accepted character. 14 15[h1 Header] 16 17 #include <boost/metaparse/digit.hpp> 18 19[h1 Expression semantics] 20 21The following are equivalent: 22 23 digit 24 25 accept_when<one_char, util::is_digit, error::digit_expected> 26 27[h1 Example] 28 29 #include <boost/metaparse/digit.hpp> 30 #include <boost/metaparse/start.hpp> 31 #include <boost/metaparse/string.hpp> 32 #include <boost/metaparse/is_error.hpp> 33 #include <boost/metaparse/get_result.hpp> 34 35 using namespace boost::metaparse; 36 37 static_assert( 38 !is_error<digit::apply<BOOST_METAPARSE_STRING("0"), start>>::type::value, 39 "digit should accept a digit" 40 ); 41 42 static_assert( 43 is_error<digit::apply<BOOST_METAPARSE_STRING("x"), start>>::type::value, 44 "digit should reject a character" 45 ); 46 47 static_assert( 48 get_result< 49 digit::apply<BOOST_METAPARSE_STRING("0"), start> 50 >::type::value == '0', 51 "the result of parsing should be the character value" 52 ); 53 54[endsect] 55 56