metaparse/doc/getting_started_40.qbk

11 lines
719 B
Plaintext

[#getting_started_40]
struct plus_exp6;
using paren_exp5 = middle_of<lparen_token, plus_exp6, rparen_token>;
using primary_exp4 = one_of<int_token, paren_exp5, fail<missing_primary_expression>>;
using unary_exp4 = foldr_start_with_parser< minus_token, primary_exp4, boost::mpl::lambda<boost::mpl::negate<boost::mpl::_1>>::type >;
using mult_exp7 = foldl_reject_incomplete_start_with_parser< sequence<one_of<times_token, divides_token>, unary_exp4>, unary_exp4, boost::mpl::quote2<binary_op> >;
struct plus_exp6 : foldl_reject_incomplete_start_with_parser< sequence<one_of<plus_token, minus_token>, mult_exp7>, mult_exp7, boost::mpl::quote2<binary_op> > {};
using exp_parser23 = build_parser<plus_exp6>;