xo-expression2: + GCObject,Printable facets for DSequenceExpr

This commit is contained in:
Roland Conybeare 2026-01-31 12:40:50 -05:00
commit 440d43e109
57 changed files with 348 additions and 46 deletions

View file

@ -22,6 +22,7 @@ namespace xo {
**/
class DSequenceExpr {
public:
using ACollector = xo::mm::ACollector;
using AAllocator = xo::mm::AAllocator;
using TypeDescr = xo::reflect::TypeDescr;
using size_type = DArray::size_type;
@ -68,6 +69,14 @@ namespace xo {
bool pretty(const ppindentinfo & ppii) const;
///@}
/** @defgroup scm-sequenceexpr-gcobject-facet gcobject facet methods **/
///@{
std::size_t shallow_size() const noexcept;
DSequenceExpr * shallow_copy(obj<AAllocator> mm) const noexcept;
std::size_t forward_children(obj<ACollector> gc) noexcept;
///@}
private:
/** expression value always has type consistent with this description