pub struct LoopbackTransport { /* private fields */ }Expand description
An in-process SyncTransport: each scope is a real [FsRelay] +
InMemoryLeaseCoordinator over a temp dir, so it reproduces the canonical
relay/lease semantics exactly. Clone shares one server across devices.
Implementations§
Source§impl LoopbackTransport
impl LoopbackTransport
Sourcepub fn new() -> Result<Self>
pub fn new() -> Result<Self>
A fresh reference server (system wall clock, no eviction horizon).
pub fn with_config(config: RelayConfig, wall: WallClock) -> Result<Self>
Trait Implementations§
Source§impl Clone for LoopbackTransport
impl Clone for LoopbackTransport
Source§fn clone(&self) -> LoopbackTransport
fn clone(&self) -> LoopbackTransport
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl SyncTransport for LoopbackTransport
impl SyncTransport for LoopbackTransport
fn enroll( &self, scope: &str, device_id: &str, ) -> Result<RosterEntry, TransportError>
fn push( &self, scope: &str, device_id: &str, ops: &[OpRecord], ) -> Result<PushOutcome, TransportError>
fn pull( &self, scope: &str, device_id: &str, since: &Frontier, ) -> Result<PullResult, TransportError>
fn ack( &self, scope: &str, device_id: &str, frontier: Hlc, ) -> Result<AckOutcome, TransportError>
fn checkpoint_put( &self, scope: &str, device_id: &str, checkpoint: &Checkpoint, ) -> Result<bool, TransportError>
fn checkpoint_get( &self, scope: &str, ) -> Result<Option<Checkpoint>, TransportError>
fn roster(&self, scope: &str) -> Result<Vec<RosterEntry>, TransportError>
fn stable_frontier(&self, scope: &str) -> Result<Option<Hlc>, TransportError>
fn gc(&self, scope: &str) -> Result<GcReport, TransportError>
fn lease_acquire( &self, scope: &str, agent_id: &str, device_id: &str, ttl_ms: u64, ) -> Result<LeaseWire, TransportError>
fn lease_renew( &self, scope: &str, agent_id: &str, device_id: &str, epoch: u64, ttl_ms: u64, ) -> Result<LeaseWire, TransportError>
fn lease_release( &self, scope: &str, agent_id: &str, device_id: &str, epoch: u64, ) -> Result<LeaseWire, TransportError>
fn lease_current( &self, scope: &str, agent_id: &str, ) -> Result<LeaseWire, TransportError>
Auto Trait Implementations§
impl Freeze for LoopbackTransport
impl RefUnwindSafe for LoopbackTransport
impl Send for LoopbackTransport
impl Sync for LoopbackTransport
impl Unpin for LoopbackTransport
impl UnsafeUnpin for LoopbackTransport
impl UnwindSafe for LoopbackTransport
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more