From e3d42d5074be054c2f6a2e9f02805ab047f07db9 Mon Sep 17 00:00:00 2001 From: Marcos Magueta Date: Thu, 10 Sep 2026 00:20:27 -0300 Subject: ephemeral relation and generator at the kernel --- lib/kernel/EphemeralRelation.mli | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 lib/kernel/EphemeralRelation.mli (limited to 'lib/kernel/EphemeralRelation.mli') diff --git a/lib/kernel/EphemeralRelation.mli b/lib/kernel/EphemeralRelation.mli new file mode 100644 index 0000000..e579abd --- /dev/null +++ b/lib/kernel/EphemeralRelation.mli @@ -0,0 +1,26 @@ +module Make (S : Abstract.Storage.STORAGE) : sig + type t + + val make : + heading:Concepts.Hash.hash -> + evaluator:string -> + source:string -> + entry:string -> + bindings:Concepts.Hash.hash -> + inputs:string BatFingerTree.t -> + unit -> + (t, Concepts.Condition.condition) result + + val store : S.transaction -> t -> (Concepts.Hash.hash, Concepts.Condition.condition) result + val load : S.transaction -> S.connection -> Concepts.Hash.hash -> (Protocols.Handle.t, Concepts.Condition.condition) result + val heading : t -> Concepts.Hash.hash + val evaluator : t -> string + val inputs : t -> string BatFingerTree.t + + module Error : sig + val malformed : unit -> Concepts.Condition.condition + val replay_not_implemented : unit -> Concepts.Condition.condition + end + + module Representation : Concepts.Encoding.Record.S with type t = t +end -- cgit v1.2.3