Struct nng::Dialer[][src]

pub struct Dialer { /* fields omitted */ }

An active outgoing connection.

A Dialer is responsible for establishing and maintaining outgoing connections. If a connection is ever broken, or fails, the Dialer object automatically attempts to reconnect.

Directly creating a Dialer is only necessary when one wishes to configure the connection before opening it or if one wants to close the outgoing connection without closing the socket. Otherwise, Socket::dial can be used.

Note that the client/server relationship described by a dialer/listener is completely orthogonal to any similar relationship in the protocols. For example, a rep socket may use a dialer to connect to a listener on a req socket. This orthogonality can lead to innovative solutions to otherwise challenging communications problems.

See the NNG documentation for more information.

Implementations

impl Dialer[src]

pub fn new(socket: &Socket, url: &str, nonblocking: bool) -> Result<Self>[src]

Creates a new dialer object associated with the given socket.

Note that this will immediately start the dialer so no configuration will be possible. Use DialerBuilder to change the dialer options before starting it.

Errors

pub fn close(self)[src]

Closes the dialer.

This also closes any Pipe objects that have been created by the dialer. Once this function returns, the dialer has been closed and all of its resources have been deallocated. Therefore, any attempt to utilize the dialer (with this or any other handle) will result in an error.

Dialers are implicitly closed when the socket they are associated with is closed. Dialers are not closed when all handles are dropped.

Trait Implementations

impl Clone for Dialer[src]

impl Copy for Dialer[src]

impl Debug for Dialer[src]

impl Eq for Dialer[src]

impl GetOpt<KeepAlive> for Dialer[src]

impl GetOpt<LocalAddr> for Dialer[src]

impl GetOpt<MaxTtl> for Dialer[src]

impl GetOpt<NoDelay> for Dialer[src]

impl GetOpt<Protocol> for Dialer[src]

impl GetOpt<Raw> for Dialer[src]

impl GetOpt<ReconnectMaxTime> for Dialer[src]

impl GetOpt<ReconnectMinTime> for Dialer[src]

impl GetOpt<RecvBufferSize> for Dialer[src]

impl GetOpt<RecvMaxSize> for Dialer[src]

impl GetOpt<RecvTimeout> for Dialer[src]

impl GetOpt<ResendTime> for Dialer[src]

impl GetOpt<SendBufferSize> for Dialer[src]

impl GetOpt<SendTimeout> for Dialer[src]

impl GetOpt<SocketName> for Dialer[src]

impl GetOpt<SurveyTime> for Dialer[src]

impl GetOpt<Url> for Dialer[src]

impl Hash for Dialer[src]

impl Ord for Dialer[src]

impl PartialEq<Dialer> for Dialer[src]

impl PartialOrd<Dialer> for Dialer[src]

Auto Trait Implementations

impl RefUnwindSafe for Dialer

impl Send for Dialer

impl Sync for Dialer

impl Unpin for Dialer

impl UnwindSafe for Dialer

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> Options for T where
    T: HasOpts, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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.