xo-reader2: adopt DSchematikaParser as gc-aware object

Use as virtual GC root.
This commit is contained in:
Roland Conybeare 2026-03-24 22:15:08 -04:00
commit 3686c3420d
9 changed files with 570 additions and 268 deletions

View file

@ -47,6 +47,10 @@ namespace xo {
{
scope log(XO_DEBUG(true));
// SchematikParser
FacetRegistry::register_impl<AGCObject, DSchematikaParser>();
// GlobalEnv
FacetRegistry::register_impl<AGCObject, DGlobalEnv>();
@ -114,11 +118,11 @@ namespace xo {
FacetRegistry::register_impl<ASyntaxStateMachine, DExpectQArraySsm>();
FacetRegistry::register_impl<APrintable, DExpectQArraySsm>();
// misc types showing up in aux arena
TypeRegistry::register_type<SchematikaParser>();
// misc types showing up in parser stack arena
TypeRegistry::register_type<ParserStack>();
log && log(xtag("DSchematikaParser.tseq", typeseq::id<DSchematikaParser>()));
log && log(xtag("DGlobalEnv.tseq", typeseq::id<DGlobalEnv>()));
log && log(xtag("DToplevelSeqSsm.tseq", typeseq::id<DToplevelSeqSsm>()));
log && log(xtag("DDefineSsm.tseq", typeseq::id<DDefineSsm>()));