Struct brb_membership::brb_membership::State [−][src]
pub struct State<A: Ord, SA, S: Ord> { pub id: SA, pub gen: Generation, pub pending_gen: Generation, pub forced_reconfigs: BTreeMap<Generation, BTreeSet<Reconfig<A>>>, pub history: BTreeMap<Generation, Vote<A, S>>, pub votes: BTreeMap<A, Vote<A, S>>, pub faulty: bool, }
Fields
id: SA
gen: Generation
pending_gen: Generation
forced_reconfigs: BTreeMap<Generation, BTreeSet<Reconfig<A>>>
history: BTreeMap<Generation, Vote<A, S>>
votes: BTreeMap<A, Vote<A, S>>
faulty: bool
Implementations
impl<A, SA, S> State<A, SA, S> where
A: Actor<S>,
SA: SigningActor<A, S>,
S: Sig,
[src]
impl<A, SA, S> State<A, SA, S> where
A: Actor<S>,
SA: SigningActor<A, S>,
S: Sig,
[src]pub fn new() -> Self
[src]
pub fn force_join(&mut self, actor: A)
[src]
pub fn force_leave(&mut self, actor: A)
[src]
pub fn members(&self, gen: Generation) -> Result<BTreeSet<A>, Error<A, S>>
[src]
pub fn propose(
&mut self,
reconfig: Reconfig<A>
) -> Result<Vec<VoteMsg<A, S>>, Error<A, S>>
[src]
&mut self,
reconfig: Reconfig<A>
) -> Result<Vec<VoteMsg<A, S>>, Error<A, S>>
pub fn anti_entropy(&self, from_gen: Generation, actor: A) -> Vec<VoteMsg<A, S>>
[src]
pub fn handle_vote(
&mut self,
vote: Vote<A, S>
) -> Result<Vec<VoteMsg<A, S>>, Error<A, S>>
[src]
&mut self,
vote: Vote<A, S>
) -> Result<Vec<VoteMsg<A, S>>, Error<A, S>>
pub fn validate_vote(&self, vote: &Vote<A, S>) -> Result<(), Error<A, S>>
[src]
pub fn validate_reconfig(
&self,
reconfig: &Reconfig<A>
) -> Result<(), Error<A, S>>
[src]
&self,
reconfig: &Reconfig<A>
) -> Result<(), Error<A, S>>
Trait Implementations
Auto Trait Implementations
impl<A, SA, S> RefUnwindSafe for State<A, SA, S> where
A: RefUnwindSafe,
S: RefUnwindSafe,
SA: RefUnwindSafe,
A: RefUnwindSafe,
S: RefUnwindSafe,
SA: RefUnwindSafe,
impl<A, SA, S> Send for State<A, SA, S> where
A: Send,
S: Send,
SA: Send,
A: Send,
S: Send,
SA: Send,
impl<A, SA, S> Sync for State<A, SA, S> where
A: Sync,
S: Sync,
SA: Sync,
A: Sync,
S: Sync,
SA: Sync,
impl<A, SA, S> Unpin for State<A, SA, S> where
SA: Unpin,
SA: Unpin,
impl<A, SA, S> UnwindSafe for State<A, SA, S> where
A: RefUnwindSafe,
S: RefUnwindSafe,
SA: UnwindSafe,
A: RefUnwindSafe,
S: RefUnwindSafe,
SA: UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,