Struct viewstamped_replication::driver::LocalDriver
source · pub struct LocalDriver<S, H> { /* private fields */ }Implementations§
source§impl<S: Service + Default, H: HealthDetector + Default> LocalDriver<S, H>
impl<S: Service + Default, H: HealthDetector + Default> LocalDriver<S, H>
pub fn new(group: GroupIdentifier) -> Self
pub fn recover<I, II>(&mut self, replicas: II)where
I: Iterator<Item = ReplicaIdentifier>,
II: IntoIterator<Item = ReplicaIdentifier, IntoIter = I>,
source§impl<S: Service + Default, H: HealthDetector + Clone> LocalDriver<S, H>
impl<S: Service + Default, H: HealthDetector + Clone> LocalDriver<S, H>
pub fn with_health_detector(group: GroupIdentifier, detector: &H) -> Self
pub fn recover_with_detector<I, II>(&mut self, replicas: II, detector: &H)where
I: Iterator<Item = ReplicaIdentifier>,
II: IntoIterator<Item = ReplicaIdentifier, IntoIter = I>,
source§impl<S: Service, H: HealthDetector> LocalDriver<S, H>
impl<S: Service, H: HealthDetector> LocalDriver<S, H>
pub fn take( self, identifier: ReplicaIdentifier ) -> Result<(Replica<LocalState<NonVolatileState>, S, H>, Mailbox), Self>
pub fn is_empty(&self, identifier: ReplicaIdentifier) -> bool
pub fn crash<I, II>(&mut self, replicas: II)where
I: Iterator<Item = ReplicaIdentifier>,
II: IntoIterator<Item = ReplicaIdentifier, IntoIter = I>,
pub fn deliver(&mut self, message: Message)
pub fn fetch(&mut self, client: ClientIdentifier) -> Vec<Message>
Trait Implementations§
source§impl<S: Service, H: HealthDetector> Driver for LocalDriver<S, H>
impl<S: Service, H: HealthDetector> Driver for LocalDriver<S, H>
fn drive<I, II>(&mut self, replicas: II)where
I: Iterator<Item = ReplicaIdentifier>,
II: IntoIterator<Item = ReplicaIdentifier, IntoIter = I>,
fn drive_to_empty<I, II>(&mut self, replicas: II)where
I: Iterator<Item = ReplicaIdentifier> + DoubleEndedIterator + Clone,
II: IntoIterator<Item = ReplicaIdentifier, IntoIter = I>,
Auto Trait Implementations§
impl<S, H> RefUnwindSafe for LocalDriver<S, H>where
H: RefUnwindSafe,
S: RefUnwindSafe,
impl<S, H> Send for LocalDriver<S, H>
impl<S, H> Sync for LocalDriver<S, H>
impl<S, H> Unpin for LocalDriver<S, H>
impl<S, H> UnwindSafe for LocalDriver<S, H>where
H: UnwindSafe,
S: UnwindSafe,
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