Make_codec.Batch
The batch API is used to have better control of when data is sent between the client and server when manipulating trees.
module Request_tree : Irmin_server.Tree.S
type store = t
type t =
(path
* [ `Contents of [ `Hash of hash | `Value of contents ] * metadata option
| `Tree of Request_tree.t
| `Remove ])
list
A batch is list of updates and their associated paths
val v : unit -> t
val ()
creates a new batch
add_value path ~metadata value batch
will add value
at path
with associated metadata
when batch
is apply
'd
add_hash path ~metadata hash batch
will add hash
at path
with associated metadata
when batch
is apply
'd
add_tree path batch
will add tree
at path
when batch
is apply
'd
Note: if tree
has been modified locally, calls to the server may be made.
val apply : info:Info.f -> ?path:path -> store -> t -> commit_key Lwt.t
apply ~info ~path store batch
applies batch
to the subtree at path
(defaults to the root) in store
. The key of the commit is returned.