Invoke

Trait Invoke 

Source
pub trait Invoke<Protocol, A: App> {
    const DEFAULT_UNLOGGED_TIMEOUT: Millis = 1_000u64;

    // Required methods
    fn invoke(&mut self, op: A::Op) -> Reliable<A::Res> ;
    fn invoke_unlogged(
        &mut self,
        op: A::Op,
        timeout: Millis,
    ) -> Unreliable<A::Res> ;
}
Expand description

Designing everything for a pratical system is hard. Designing everything correctly is impossible. That’s why a versioned spec module is prepared.

At any time top level module does wildcard re-exporting from the latest version of spec. To survive from a breaking change, change use crate::* to use crate::spec::v1::*.

Provided Associated Constants§

Required Methods§

Source

fn invoke(&mut self, op: A::Op) -> Reliable<A::Res>

Source

fn invoke_unlogged(&mut self, op: A::Op, timeout: Millis) -> Unreliable<A::Res>

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<T: Client<A>, A: App> Invoke<Unreplicated, A> for T