Up

module Ir_slice

: sig
#
module type S = sig
include Tc.S0
#
type contents
#
type node
#
type commit
#
val create : unit -> t Lwt.t
#
val add_contents : t -> contents -> unit Lwt.t
#
val add_node : t -> node -> unit Lwt.t
#
val add_commit : t -> commit -> unit Lwt.t
#
val iter_contents : t -> (contents -> unit Lwt.t) -> unit Lwt.t
#
val iter_nodes : t -> (node -> unit Lwt.t) -> unit Lwt.t
#
val iter_commits : t -> (commit -> unit Lwt.t) -> unit Lwt.t
end
#
module Make : functor (C : Ir_contents.STORE) -> functor (N : Ir_node.STORE) -> functor (H : Ir_commit.STORE) -> S with type contents = C.key * C.value and type node = N.key * N.value and type commit = H.key * H.value
end