xo-reader: + sequence expression (aka beginexpr or block)

This commit is contained in:
Roland Conybeare 2024-08-20 13:32:08 -04:00
commit dad6b2562c
7 changed files with 240 additions and 8 deletions

View file

@ -33,6 +33,8 @@ namespace xo {
return "lambdaexpr";
case exprstatetype::parenexpr:
return "parenexpr";
case exprstatetype::sequenceexpr:
return "sequenceexpr";
case exprstatetype::expect_rhs_expression:
return "expect_rhs_expression";
case exprstatetype::expect_symbol:
@ -211,6 +213,30 @@ namespace xo {
this->illegal_input_error(self_name, tk);
}
void
exprstate::on_leftbrace_token(const token_type & tk,
parserstatemachine * /*p_psm*/)
{
constexpr bool c_debug_flag = true;
scope log(XO_DEBUG(c_debug_flag));
constexpr const char * self_name = "exprstate::on_leftbrace_token";
this->illegal_input_error(self_name, tk);
}
void
exprstate::on_rightbrace_token(const token_type & tk,
parserstatemachine * /*p_psm*/)
{
constexpr bool c_debug_flag = true;
scope log(XO_DEBUG(c_debug_flag));
constexpr const char * self_name = "exprstate::on_rightbrace_token";
this->illegal_input_error(self_name, tk);
}
void
exprstate::on_operator_token(const token_type & tk,
parserstatemachine * /*p_psm*/)