From 882511dc8c0abded18ba6abdca64938db2652771 Mon Sep 17 00:00:00 2001 From: Marcos Magueta Date: Wed, 23 Sep 2026 03:32:15 -0300 Subject: lift retaining, membership and mode checks out of ephemeral relation --- lib/kernel/Lifecycle.mli | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'lib/kernel/Lifecycle.mli') diff --git a/lib/kernel/Lifecycle.mli b/lib/kernel/Lifecycle.mli index f110768..fa3abee 100644 --- a/lib/kernel/Lifecycle.mli +++ b/lib/kernel/Lifecycle.mli @@ -10,3 +10,13 @@ end class null : lifecycle class virtual counted : controlled_lifecycle + +(** stands for [inner], carrying what it carries, while holding a + reference to [owner], so what [inner] reads outlives a release of + the object that produced it. *) +class retaining : Protocols.Handle.t -> lifecycle -> object + inherit lifecycle + method destroy : unit + method hash : Concepts.Hash.hash + method protocols : Protocols.Handle.protocol list +end -- cgit v1.2.3