aboutsummaryrefslogtreecommitdiffstats
path: root/lib/kernel/Multigroup.mli
diff options
context:
space:
mode:
Diffstat (limited to 'lib/kernel/Multigroup.mli')
-rw-r--r--lib/kernel/Multigroup.mli18
1 files changed, 11 insertions, 7 deletions
diff --git a/lib/kernel/Multigroup.mli b/lib/kernel/Multigroup.mli
index f8e2555..6dcfb2f 100644
--- a/lib/kernel/Multigroup.mli
+++ b/lib/kernel/Multigroup.mli
@@ -1,16 +1,20 @@
+(** A multigroup: its schemas, \multigroup\[m]\schema\[s]. *)
module Make (S : Abstract.Storage.STORAGE) : sig
- type t
+ include Merkle.VALUE
- val encode : t -> Concepts.Blob.t
- val decode : Concepts.Blob.t -> (t, Concepts.Condition.condition) result
-
- (** [bind] runs the stored programs read through the multigroup; see
- [EphemeralRelation.binding]. *)
- val wrap :
+ val load :
?bind:EphemeralRelation.binding ->
S.connection ->
t ->
(Protocols.Handle.t, Concepts.Condition.condition) result
+ (** a multigroup handed over with no address, as a directory holding its
+ schemas under \schema, to store once the write has begun. *)
+ val admit :
+ string ->
+ Protocols.Handle.t ->
+ (S.transaction Prototype.Associative.admission, Concepts.Condition.condition) result
+
+ (** an empty one, stored. *)
val make : S.connection -> (Protocols.Handle.t, Concepts.Condition.condition) result
end