aboutsummaryrefslogtreecommitdiffstats
path: root/src/remake/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/remake/mod.rs')
-rw-r--r--src/remake/mod.rs5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/remake/mod.rs b/src/remake/mod.rs
index 04e9d8a..01e1e3e 100644
--- a/src/remake/mod.rs
+++ b/src/remake/mod.rs
@@ -197,6 +197,11 @@ pub(crate) trait Host: Clone + Send + Sync + 'static {
/// ([`Host::switch_epoch`] with `writable` false).
fn accept_writes(&self) -> impl Future<Output = ()> + Send;
+ /// Stops taking writes (until [`Host::accept_writes`], or a swap that takes them)
+ /// and, with `copy`, returns a copy of the document as it is then, in one step: no
+ /// write is acknowledged that the copy lacks.
+ fn refuse_writes(&self, copy: bool) -> impl Future<Output = Option<Document>> + Send;
+
/// Applies a change downloaded from peers (`fetch_change`), then publishes it like
/// a change received by sync.
fn apply_change(