Struct smoltcp::socket::SocketRef[][src]

pub struct SocketRef<'a, T: Session + 'a> { /* fields omitted */ }

A smart pointer to a socket.

Allows the network stack to efficiently determine if the socket state was changed in any way.

Implementations

impl<'a, T: Session + 'a> Ref<'a, T>[src]

pub fn new(socket: &'a mut T) -> Self[src]

Wrap a pointer to a socket to make a smart pointer.

Calling this function is only necessary if your code is using into_inner.

pub fn into_inner(ref_: Self) -> &'a mut T[src]

Unwrap a smart pointer to a socket.

The finalization code is not run. Prompt operation of the network stack depends on wrapping the returned pointer back and dropping it.

Calling this function is only necessary to achieve composability if you must map a &mut SocketRef<'a, XSocket> to a &'a mut XSocket (note the lifetimes); be sure to call new afterwards.

Trait Implementations

impl<'a, T: Session> Deref for Ref<'a, T>[src]

type Target = T

The resulting type after dereferencing.

impl<'a, T: Session> DerefMut for Ref<'a, T>[src]

impl<'a, T: Session> Drop for Ref<'a, T>[src]

Auto Trait Implementations

impl<'a, T> RefUnwindSafe for Ref<'a, T> where
    T: RefUnwindSafe

impl<'a, T> Send for Ref<'a, T> where
    T: Send

impl<'a, T> Sync for Ref<'a, T> where
    T: Sync

impl<'a, T> Unpin for Ref<'a, T>

impl<'a, T> !UnwindSafe for Ref<'a, T>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.