From 106ed35b525b459f1035277c63495c506fef86aa Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Thu, 12 Mar 2026 20:31:46 -0500 Subject: [PATCH] xo-type: + TypeVarRef --- CMakeLists.txt | 16 ++++++++++++++++ src/type/CMakeLists.txt | 3 +++ src/type/type_register_facets.cpp | 13 +++++++++---- src/type/type_register_types.cpp | 2 ++ 4 files changed, 30 insertions(+), 4 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0c7d380..e61de98 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -102,6 +102,22 @@ xo_add_genfacetimpl( # ---------------------------------------------------------------- +# note: manual target; generated code committed to git +xo_add_genfacetimpl( + TARGET xo-type-facetimpl-type-typevarref + FACET_PKG xo_type + INPUT idl/IType_DTypeVarRef.json5 +) + +# note: manual target; generated code committed to git +xo_add_genfacetimpl( + TARGET xo-type-facetimpl-gcobject-typevarref + FACET_PKG xo_alloc2 + INPUT idl/IGCObject_DTypeVarRef.json5 +) + +# ---------------------------------------------------------------- + xo_add_genfacet_all(xo-type-genfacet-all) install(DIRECTORY idl/ diff --git a/src/type/CMakeLists.txt b/src/type/CMakeLists.txt index 6d6cdcc..d420349 100644 --- a/src/type/CMakeLists.txt +++ b/src/type/CMakeLists.txt @@ -11,15 +11,18 @@ set(SELF_SRCS DListType.cpp DArrayType.cpp DFunctionType.cpp + DTypeVarRef.cpp IType_Any.cpp IType_DAtomicType.cpp IType_DListType.cpp IType_DArrayType.cpp IType_DFunctionType.cpp + IType_DTypeVarRef.cpp IGCObject_DAtomicType.cpp IGCObject_DListType.cpp IGCObject_DArrayType.cpp IGCObject_DFunctionType.cpp + IGCObject_DTypeVarRef.cpp ) xo_add_shared_library4(${SELF_LIB} ${PROJECT_NAME}Targets ${PROJECT_VERSION} 1 ${SELF_SRCS}) diff --git a/src/type/type_register_facets.cpp b/src/type/type_register_facets.cpp index 9cada7e..047fb9f 100644 --- a/src/type/type_register_facets.cpp +++ b/src/type/type_register_facets.cpp @@ -4,11 +4,12 @@ **/ #include "type_register_facets.hpp" +#include "AtomicType.hpp" +#include "ListType.hpp" +#include "ArrayType.hpp" +#include "FunctionType.hpp" +#include "TypeVarRef.hpp" -#include -#include -#include -#include #include #include @@ -36,10 +37,14 @@ namespace xo { FacetRegistry::register_impl(); FacetRegistry::register_impl(); + FacetRegistry::register_impl(); + FacetRegistry::register_impl(); + log && log(xtag("DAtomicType.tseq", typeseq::id())); log && log(xtag("DListType.tseq", typeseq::id())); log && log(xtag("DArrayType.tseq", typeseq::id())); log && log(xtag("DFunctionType.tseq", typeseq::id())); + log && log(xtag("DTypeVarRef.tseq", typeseq::id())); return true; } diff --git a/src/type/type_register_types.cpp b/src/type/type_register_types.cpp index e031ce5..28e9f9a 100644 --- a/src/type/type_register_types.cpp +++ b/src/type/type_register_types.cpp @@ -9,6 +9,7 @@ #include "ListType.hpp" #include "ArrayType.hpp" #include "FunctionType.hpp" +#include "TypeVarRef.hpp" #include #include #include @@ -31,6 +32,7 @@ namespace xo { ok &= gc.install_type(impl_for()); ok &= gc.install_type(impl_for()); ok &= gc.install_type(impl_for()); + ok &= gc.install_type(impl_for()); return ok; }