xo-reader2 xo-object2: regenerate facets from idl

This commit is contained in:
Roland Conybeare 2026-01-20 22:13:01 -05:00
commit 4c84f8c198
8 changed files with 55 additions and 0 deletions

View file

@ -110,6 +110,8 @@ xo_add_genfacetimpl(
OUTPUT_CPP_DIR src/reader2
)
xo_add_genfacet_all(xo-reader2-genfacet-all)
# ----------------------------------------------------------------
# shared library

View file

@ -70,6 +70,15 @@
{type: "ParserStateMachine *", name: "p_psm"},
],
},
{
name: "on_colon_token",
doc: ["update state machine for incoming colon-token @p tk"],
return_type: "void",
args: [
{type: "const Token &", name: "tk"},
{type: "ParserStateMachine *", name: "p_psm"},
],
},
{
name: "on_parsed_symbol",
doc: ["update stat machine for incoming parsed symbol @p sym"],

View file

@ -127,6 +127,12 @@ namespace xo {
void on_if_token(const Token & tk,
ParserStateMachine * p_psm);
/** update state for this syntax on incoming colon token @p tk,
* overall parser state in @p p_psm
**/
void on_colon_token(const Token & tk,
ParserStateMachine * p_psm);
/** update state for this syntax after parsing a symbol @p sym;
* overall parser state in @p p_psm
**/

View file

@ -69,6 +69,12 @@ namespace xo {
void on_if_token(const Token & tk,
ParserStateMachine * p_psm);
/** update state for this syntax on incoming colon token @p tk,
* overall parser state in @p p_psm
**/
void on_colon_token(const Token & tk,
ParserStateMachine * p_psm);
/** update state for this syntax after parsing a symbol @p sym;
* overall parser state in @p p_psm.
*

View file

@ -79,6 +79,11 @@ namespace xo {
**/
void on_if_token(const Token & tk, ParserStateMachine * p_psm);
/** update state for this syntax on incoming colon token @p tk,
* overall parser state in @p p_psm
**/
void on_colon_token(const Token & tk, ParserStateMachine * p_psm);
/** update state for this syntax on parsed symbol @p sym
* from immediately-downstream ssm.
* overall parser state in @p p_psm

View file

@ -498,6 +498,15 @@ namespace xo {
this->get_expect_str());
}
void
DDefineSsm::on_colon_token(const Token & tk,
ParserStateMachine * p_psm)
{
p_psm->illegal_input_on_token("DDefineSsm::on_colon_token",
tk,
this->get_expect_str());
}
bool
DDefineSsm::pretty(const ppindentinfo & ppii) const
{

View file

@ -95,6 +95,15 @@ namespace xo {
this->get_expect_str());
}
void
DExpectSymbolSsm::on_colon_token(const Token & tk,
ParserStateMachine * p_psm)
{
p_psm->illegal_input_on_token("DExpectSymbolSsm::on_colon_token",
tk,
this->get_expect_str());
}
void
DExpectSymbolSsm::on_parsed_symbol(std::string_view sym,
ParserStateMachine * p_psm)

View file

@ -160,6 +160,15 @@ namespace xo {
}
}
void
DExprSeqState::on_colon_token(const Token & tk,
ParserStateMachine * p_psm)
{
p_psm->illegal_input_on_token("DExprSeqState::on_colon_token",
tk,
this->get_expect_str());
}
void
DExprSeqState::on_parsed_symbol(std::string_view sym,
ParserStateMachine * p_psm)