xo-reader: bugfix: + missing exprstatetype.let1expr
This commit is contained in:
parent
7fad60290d
commit
ec1e45d2ed
3 changed files with 12 additions and 1 deletions
|
|
@ -38,6 +38,11 @@ namespace xo {
|
||||||
**/
|
**/
|
||||||
sequenceexpr,
|
sequenceexpr,
|
||||||
|
|
||||||
|
/** handle let1 (single local variable)
|
||||||
|
* see @ref let1_xs
|
||||||
|
**/
|
||||||
|
let1expr,
|
||||||
|
|
||||||
expect_rhs_expression,
|
expect_rhs_expression,
|
||||||
expect_symbol,
|
expect_symbol,
|
||||||
expect_type,
|
expect_type,
|
||||||
|
|
|
||||||
|
|
@ -35,6 +35,8 @@ namespace xo {
|
||||||
return "parenexpr";
|
return "parenexpr";
|
||||||
case exprstatetype::sequenceexpr:
|
case exprstatetype::sequenceexpr:
|
||||||
return "sequenceexpr";
|
return "sequenceexpr";
|
||||||
|
case exprstatetype::let1expr:
|
||||||
|
return "let1expr";
|
||||||
case exprstatetype::expect_rhs_expression:
|
case exprstatetype::expect_rhs_expression:
|
||||||
return "expect_rhs_expression";
|
return "expect_rhs_expression";
|
||||||
case exprstatetype::expect_symbol:
|
case exprstatetype::expect_symbol:
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,8 @@ namespace xo {
|
||||||
|
|
||||||
let1_xs::let1_xs(std::string lhs_name,
|
let1_xs::let1_xs(std::string lhs_name,
|
||||||
rp<Expression> rhs)
|
rp<Expression> rhs)
|
||||||
: lhs_name_{std::move(lhs_name)},
|
: exprstate(),
|
||||||
|
lhs_name_{std::move(lhs_name)},
|
||||||
rhs_{std::move(rhs)}
|
rhs_{std::move(rhs)}
|
||||||
{}
|
{}
|
||||||
|
|
||||||
|
|
@ -57,6 +58,9 @@ namespace xo {
|
||||||
let1_xs::on_expr(ref::brw<Expression> expr,
|
let1_xs::on_expr(ref::brw<Expression> expr,
|
||||||
parserstatemachine * p_psm)
|
parserstatemachine * p_psm)
|
||||||
{
|
{
|
||||||
|
constexpr bool c_debug_flag = true;
|
||||||
|
scope log(XO_DEBUG(c_debug_flag));
|
||||||
|
|
||||||
ref::brw<DefineExpr> def_expr = DefineExpr::from(expr);
|
ref::brw<DefineExpr> def_expr = DefineExpr::from(expr);
|
||||||
|
|
||||||
if (def_expr) {
|
if (def_expr) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue