pub struct ConversationStateMachine { /* private fields */ }Implementations§
Source§impl ConversationStateMachine
impl ConversationStateMachine
Sourcepub fn new_as_member() -> Self
pub fn new_as_member() -> Self
Member starts in Working (creator path, or post-join).
Sourcepub fn new_as_pending_join() -> Self
pub fn new_as_pending_join() -> Self
Joiner starts in PendingJoin until the welcome arrives.
pub fn current_state(&self) -> ConversationState
pub fn start_working(&mut self)
pub fn start_freezing(&mut self)
Sourcepub fn force_freezing(&mut self) -> bool
pub fn force_freezing(&mut self) -> bool
Transition to Freezing only from Working or Reelection
(RFC: bypass the inactivity timer for ECP-driven freezes).
Returns true on actual transition; false is a no-op.
pub fn start_selection(&mut self)
pub fn start_reelection(&mut self)
Trait Implementations§
Source§impl Clone for ConversationStateMachine
impl Clone for ConversationStateMachine
Source§fn clone(&self) -> ConversationStateMachine
fn clone(&self) -> ConversationStateMachine
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 Debug for ConversationStateMachine
impl Debug for ConversationStateMachine
Auto Trait Implementations§
impl Freeze for ConversationStateMachine
impl RefUnwindSafe for ConversationStateMachine
impl Send for ConversationStateMachine
impl Sync for ConversationStateMachine
impl Unpin for ConversationStateMachine
impl UnsafeUnpin for ConversationStateMachine
impl UnwindSafe for ConversationStateMachine
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Declassify for T
impl<T> Declassify for T
type Declassified = T
fn declassify(self) -> T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more