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

@ -5,8 +5,10 @@
#include "ApplySsm.hpp"
#include "ExpectExprSsm.hpp"
#include <xo/facet/FacetRegistry.hpp>
#include <xo/object2/Array.hpp>
#include <xo/alloc2/GCObject.hpp>
#include <xo/alloc2/Arena.hpp>
#include <xo/facet/FacetRegistry.hpp>
#include <xo/reflectutil/typeseq.hpp>
//#include "parserstatemachine.hpp"
@ -394,6 +396,13 @@ namespace xo {
refrtag("fn_expr", fn_expr, fn_expr_present));
}
void
DApplySsm::forward_children(obj<ACollector> gc) noexcept
{
gc.forward_pivot_inplace(&fn_expr_);
gc.forward_inplace(&args_expr_v_);
}
} /*namespace scm*/
} /*namespace xo*/