xo-reader2: + SyntaxStateMachine.forward_children method

Support gc traversal with goal of making ParserStateMachine a gc root
This commit is contained in:
Roland Conybeare 2026-03-24 17:43:45 -04:00
commit 3af72fec64
91 changed files with 626 additions and 39 deletions

View file

@ -16,6 +16,7 @@
//#include <xo/expression2/detail/IExpression_DVariable.hpp>
//#include <xo/expression2/symtab/ISymbolTable_DLocalSymtab.hpp>
#include <xo/printable2/Printable.hpp>
#include <xo/alloc2/GCObject.hpp>
#include <xo/facet/FacetRegistry.hpp>
#include <xo/arena/DArena.hpp>
@ -472,6 +473,14 @@ namespace xo {
}
}
void
DLambdaSsm::forward_children(obj<ACollector> gc) noexcept
{
gc.forward_inplace(&local_symtab_);
gc.forward_pivot_inplace(&body_);
gc.forward_pivot_inplace(&parent_symtab_);
}
} /*namespace scm*/
} /*namespace xo*/