Skip to main content

ConnectionState

Enum ConnectionState 

Source
pub enum ConnectionState<T> {
    Disconnected,
    Connected(T),
}
Expand description

A backend state that is either disconnected or fully connected.

Buffer implementations use this helper when their reader or writer can be constructed before the peer endpoint exists, then filled in during connection setup.

Variants§

§

Disconnected

No backend has been connected yet.

§

Connected(T)

The backend is fully connected and ready to use.

Implementations§

Source§

impl<T> ConnectionState<T>

Source

pub const fn disconnected() -> Self

Create a disconnected backend state.

Source

pub fn is_connected(&self) -> bool

Whether the backend has been connected.

Source

pub fn as_ref(&self) -> Option<&T>

Borrow the connected backend if present.

Source

pub fn as_mut(&mut self) -> Option<&mut T>

Borrow the connected backend mutably if present.

Source

pub fn connected(&self) -> &T

Get the connected backend, panicking if it is still disconnected.

Call this after validate() has proven the buffer is connected.

Source

pub fn connected_mut(&mut self) -> &mut T

Get the connected backend mutably, panicking if it is still disconnected.

Call this after validate() has proven the buffer is connected.

Source

pub fn set_connected(&mut self, value: T)

Replace the state with a connected backend.

Source

pub fn take_connected(&mut self) -> Option<T>

Take the connected backend out of the state.

Trait Implementations§

Source§

impl<T: Debug> Debug for ConnectionState<T>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T> Freeze for ConnectionState<T>
where T: Freeze,

§

impl<T> RefUnwindSafe for ConnectionState<T>
where T: RefUnwindSafe,

§

impl<T> Send for ConnectionState<T>
where T: Send,

§

impl<T> Sync for ConnectionState<T>
where T: Sync,

§

impl<T> Unpin for ConnectionState<T>
where T: Unpin,

§

impl<T> UnsafeUnpin for ConnectionState<T>
where T: UnsafeUnpin,

§

impl<T> UnwindSafe for ConnectionState<T>
where T: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<A, B, T> HttpServerConnExec<A, B> for T
where B: Body,