Up
module
Ir_sync_ext
:
sig
Store Synchronisation.
#
type
remote
#
val
remote_uri : string
->
remote
#
val
remote_store : (
module
Ir_s
.
STORE
with
type
t
= 'a)
->
'a
->
remote
#
module type
STORE =
sig
#
type
db
#
type
head
#
val
fetch :
db
->
?depth:int
->
remote
->
head
option
Lwt
.
t
#
val
fetch_exn :
db
->
?depth:int
->
remote
->
head
Lwt
.
t
#
val
pull :
db
->
?depth:int
->
remote
->
[
| `Merge
| `Update
]
->
unit
Ir_merge
.
result
Lwt
.
t
#
val
pull_exn :
db
->
?depth:int
->
remote
->
[
| `Merge
| `Update
]
->
unit
Lwt
.
t
#
val
push :
db
->
?depth:int
->
remote
->
[
| `Ok
| `Error
]
Lwt
.
t
#
val
push_exn :
db
->
?depth:int
->
remote
->
unit
Lwt
.
t
end
#
module
Make :
functor
(S :
Ir_s
.
STORE
)
->
STORE
with
type
db
=
S
.
t
and
type
head
=
S
.
head
end