pub struct PublishNamespaceStateMachine {
state: PublishNamespaceState,
}Expand description
State machine for PUBLISH_NAMESPACE flow. Idle → Pending → Active → Done.
Fields§
§state: PublishNamespaceStateImplementations§
Source§impl PublishNamespaceStateMachine
impl PublishNamespaceStateMachine
pub fn new() -> Self
pub fn state(&self) -> PublishNamespaceState
Sourcepub fn on_publish_namespace_sent(&mut self) -> Result<(), NamespaceError>
pub fn on_publish_namespace_sent(&mut self) -> Result<(), NamespaceError>
Idle → Pending.
Sourcepub fn on_publish_namespace_ok(&mut self) -> Result<(), NamespaceError>
pub fn on_publish_namespace_ok(&mut self) -> Result<(), NamespaceError>
Pending → Active.
Sourcepub fn on_publish_namespace_error(&mut self) -> Result<(), NamespaceError>
pub fn on_publish_namespace_error(&mut self) -> Result<(), NamespaceError>
Pending → Done.
Sourcepub fn on_publish_namespace_done(&mut self) -> Result<(), NamespaceError>
pub fn on_publish_namespace_done(&mut self) -> Result<(), NamespaceError>
Active → Done (publisher withdrawing).
Sourcepub fn on_publish_namespace_cancel(&mut self) -> Result<(), NamespaceError>
pub fn on_publish_namespace_cancel(&mut self) -> Result<(), NamespaceError>
Active → Done (subscriber cancelling).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for PublishNamespaceStateMachine
impl RefUnwindSafe for PublishNamespaceStateMachine
impl Send for PublishNamespaceStateMachine
impl Sync for PublishNamespaceStateMachine
impl Unpin for PublishNamespaceStateMachine
impl UnsafeUnpin for PublishNamespaceStateMachine
impl UnwindSafe for PublishNamespaceStateMachine
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