From bb08472a04127c994d3ea5a2cbc195f7116a03b8 Mon Sep 17 00:00:00 2001 From: Jon Santmyer Date: Fri, 11 Sep 2026 11:16:36 -0400 Subject: preliminary object linking support. needs testing --- sys/link.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 sys/link.h (limited to 'sys/link.h') diff --git a/sys/link.h b/sys/link.h new file mode 100644 index 0000000..37fa1e8 --- /dev/null +++ b/sys/link.h @@ -0,0 +1,21 @@ +#ifndef _JOVE_SYS_LINK_HPP +#define _JOVE_SYS_LINK_HPP 1 + +#include "hal/obj.h" + +struct obj_link +{ + size_t refcount; + jove_obj_t obj; +}; + +void *obj_deref_linked(jove_owned_obj_t *obj); +uint8_t obj_gettype_linked(jove_owned_obj_t *obj); +uint64_t obj_getvalue_linked(jove_owned_obj_t *obj); + +jove_owned_obj_t *link_deref(jove_owned_obj_t *link); +jove_obj_t link_unlink(jove_owned_obj_t *link); + +jove_owned_obj_t *link_new(jove_obj_t *tgt, jove_owned_obj_t *dst); + +#endif -- cgit v1.2.3