#[non_exhaustive]pub enum SessionState {
NotAuthenticated,
Authenticated,
Selected,
Logout,
}Expand description
IMAP session state (RFC 3501 Section 3 / RFC 9051 Section 3).
Tracks the current protocol state of the connection. State transitions
are managed automatically by ImapConnection methods.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
NotAuthenticated
Not Authenticated — client must authenticate (RFC 3501 Section 3.1).
Authenticated
Authenticated — client may select a mailbox (RFC 3501 Section 3.2).
Selected
Selected — a mailbox is open (RFC 3501 Section 3.3).
Logout
Logout — connection is being closed (RFC 3501 Section 3.4).
Trait Implementations§
Source§impl Clone for SessionState
impl Clone for SessionState
Source§fn clone(&self) -> SessionState
fn clone(&self) -> SessionState
Returns a duplicate of the value. Read more
1.0.0 · 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 SessionState
impl Debug for SessionState
Source§impl Hash for SessionState
impl Hash for SessionState
Source§impl PartialEq for SessionState
impl PartialEq for SessionState
impl Copy for SessionState
impl Eq for SessionState
impl StructuralPartialEq for SessionState
Auto Trait Implementations§
impl Freeze for SessionState
impl RefUnwindSafe for SessionState
impl Send for SessionState
impl Sync for SessionState
impl Unpin for SessionState
impl UnsafeUnpin for SessionState
impl UnwindSafe for SessionState
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