[][src]Struct romio::uds::UnixDatagram

pub struct UnixDatagram { /* fields omitted */ }

An I/O object representing a Unix datagram socket.

Methods

impl UnixDatagram
[src]

Creates a new UnixDatagram bound to the specified path.

Examples

use romio::uds::UnixDatagram;

let sock = UnixDatagram::bind("/tmp/sock")?;

Creates an unnamed pair of connected sockets.

This function will create a pair of interconnected Unix sockets for communicating back and forth between one another. Each socket will be associated with the event loop whose handle is also provided.

Examples

use romio::uds::UnixDatagram;

let (sock1, sock2) = UnixDatagram::pair()?;

Creates a new UnixDatagram which is not bound to any address.

Examples

use romio::uds::UnixDatagram;

let sock = UnixDatagram::unbound()?;

Test whether this socket is ready to be read or not.

Test whether this socket is ready to be written to or not.

Returns the local address that this socket is bound to.

Examples

use romio::uds::UnixDatagram;

let stream = UnixDatagram::bind("/tmp/sock")?;
let addr = stream.local_addr()?;

Returns the address of this socket's peer.

The connect method will connect the socket to a peer.

Examples

use romio::uds::UnixDatagram;

let stream = UnixDatagram::bind("/tmp/sock")?;
let addr = stream.peer_addr()?;

Receives data from the socket.

On success, returns the number of bytes read and the address from whence the data came.

Sends data on the socket to the specified address.

On success, returns the number of bytes written.

Returns the value of the SO_ERROR option.

Examples

use romio::uds::UnixDatagram;

let stream = UnixDatagram::bind("/tmp/sock")?;
if let Ok(Some(err)) = stream.take_error() {
    println!("Got error: {:?}", err);
}

Shut down the read, write, or both halves of this connection.

This function will cause all pending and future I/O calls on the specified portions to immediately return with an appropriate value (see the documentation of Shutdown).

Examples

use romio::uds::UnixDatagram;
use std::net::Shutdown;

let stream = UnixDatagram::bind("/tmp/sock")?;
stream.shutdown(Shutdown::Both)?;

Trait Implementations

impl Debug for UnixDatagram
[src]

impl AsRawFd for UnixDatagram
[src]

Auto Trait Implementations

impl Send for UnixDatagram

impl Sync for UnixDatagram

Blanket Implementations

impl<T> From for T
[src]

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

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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

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

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

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

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

impl<T> Erased for T
[src]