aboutsummaryrefslogblamecommitdiffstats
path: root/lib/kernel/Multigroup.mli
blob: f8e25553b5dac03a342976f391d4ebb23847d4ff (plain) (tree)
1
2
3
4
5




                                                                          








                                                                      
                                                                                      
   
module Make (S : Abstract.Storage.STORAGE) : sig
  type t

  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 :
    ?bind:EphemeralRelation.binding ->
    S.connection ->
    t ->
    (Protocols.Handle.t, Concepts.Condition.condition) result

  val make : S.connection -> (Protocols.Handle.t, Concepts.Condition.condition) result
end