Skip to main content

OwnedSocket

Struct OwnedSocket 

1.63.0 · Source
pub struct OwnedSocket { /* private fields */ }
Available on Windows only.
Expand description

An owned socket.

This closes the socket on drop.

This uses repr(transparent) and has the representation of a host socket, so it can be used in FFI in places where a socket is passed as a consumed argument or returned as an owned value, and it never has the value INVALID_SOCKET.

Implementations§

Source§

impl OwnedSocket

1.63.0 · Source

pub fn try_clone(&self) -> Result<Self>

Creates a new OwnedSocket instance that shares the same underlying object as the existing OwnedSocket instance.

Trait Implementations§

1.63.0 · Source§

impl AsRawSocket for OwnedSocket

Source§

fn as_raw_socket(&self) -> RawSocket

This item is validated for IEC 61508 (SIL 2) and ISO 26262 (ASIL B).
Extracts the raw socket. Read more
1.63.0 · Source§

impl AsSocket for OwnedSocket

Source§

fn as_socket(&self) -> BorrowedSocket<'_>

This item is validated for IEC 61508 (SIL 2) and ISO 26262 (ASIL B).
Borrows the socket.
1.63.0 · Source§

impl Debug for OwnedSocket

Source§

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

Formats the value using the given formatter. Read more
1.63.0 · Source§

impl Drop for OwnedSocket

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

fn pin_drop(self: Pin<&mut Self>)

🔬This is a nightly-only experimental API. (pin_ergonomics #130494)
Execute the destructor for this type, but different to Drop::drop, it requires self to be pinned. Read more
1.63.0 · Source§

impl From<OwnedSocket> for TcpStream

Source§

fn from(owned: OwnedSocket) -> Self

Converts to this type from the input type.
1.63.0 · Source§

impl From<OwnedSocket> for TcpListener

Source§

fn from(owned: OwnedSocket) -> Self

Converts to this type from the input type.
1.63.0 · Source§

impl From<OwnedSocket> for UdpSocket

Source§

fn from(owned: OwnedSocket) -> Self

Converts to this type from the input type.
1.63.0 · Source§

impl From<TcpListener> for OwnedSocket

Source§

fn from(tcp_listener: TcpListener) -> OwnedSocket

Takes ownership of a TcpListener’s socket.

1.63.0 · Source§

impl From<TcpStream> for OwnedSocket

Source§

fn from(tcp_stream: TcpStream) -> OwnedSocket

Takes ownership of a TcpStream’s socket.

1.63.0 · Source§

impl From<UdpSocket> for OwnedSocket

Source§

fn from(udp_socket: UdpSocket) -> OwnedSocket

Takes ownership of a UdpSocket’s underlying socket.

1.63.0 · Source§

impl FromRawSocket for OwnedSocket

Source§

unsafe fn from_raw_socket(socket: RawSocket) -> Self

This item is validated for IEC 61508 (SIL 2) and ISO 26262 (ASIL B).
Constructs a new I/O object from the specified raw socket. Read more
1.63.0 · Source§

impl IntoRawSocket for OwnedSocket

Source§

fn into_raw_socket(self) -> RawSocket

This item is validated for IEC 61508 (SIL 2) and ISO 26262 (ASIL B).
Consumes this object, returning the raw underlying socket. Read more

Auto Trait Implementations§

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, 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, 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.