xo-reader2: support if-then-else expressions. + detailed utest

This commit is contained in:
Roland Conybeare 2026-01-27 15:50:10 -05:00
commit c052c5c509
23 changed files with 1354 additions and 150 deletions

View file

@ -126,6 +126,17 @@ namespace xo {
**/
obj<AExpression> assemble_expr(ParserStateMachine * p_psm);
/** @defgroup scm-progressssm-methods general methods **/
///@{
void on_if_token(const Token & tk,
ParserStateMachine * p_psm);
void on_then_token(const Token & tk,
ParserStateMachine * p_psm);
void on_else_token(const Token & tk,
ParserStateMachine * p_psm);
///@}
/** @defgroup scm-progressssm-ssm-facet syntaxstatemachine facet methods **/
/// @{
@ -139,8 +150,6 @@ namespace xo {
ParserStateMachine * p_psm);
void on_def_token(const Token & tk,
ParserStateMachine * p_psm);
void on_if_token(const Token & tk,
ParserStateMachine * p_psm);
void on_colon_token(const Token & tk,
ParserStateMachine * p_psm);
void on_singleassign_token(const Token & tk,