Trait gio::prelude::SocketAddressEnumeratorExt
source · pub trait SocketAddressEnumeratorExt: 'static {
// Required methods
fn next(
&self,
cancellable: Option<&impl IsA<Cancellable>>
) -> Result<Option<SocketAddress>, Error>;
fn next_async<P: FnOnce(Result<Option<SocketAddress>, Error>) + 'static>(
&self,
cancellable: Option<&impl IsA<Cancellable>>,
callback: P
);
fn next_future(
&self
) -> Pin<Box_<dyn Future<Output = Result<Option<SocketAddress>, Error>> + 'static>>;
}
Expand description
Required Methods§
sourcefn next(
&self,
cancellable: Option<&impl IsA<Cancellable>>
) -> Result<Option<SocketAddress>, Error>
fn next( &self, cancellable: Option<&impl IsA<Cancellable>> ) -> Result<Option<SocketAddress>, Error>
Retrieves the next SocketAddress
from self
. Note that this
may block for some amount of time. (Eg, a NetworkAddress
may need
to do a DNS lookup before it can return an address.) Use
next_async()
if you need to avoid
blocking.
If self
is expected to yield addresses, but for some reason
is unable to (eg, because of a DNS error), then the first call to
next()
will return an appropriate error
in *error
. However, if the first call to
next()
succeeds, then any further
internal errors (other than cancellable
being triggered) will be
ignored.
cancellable
optional Cancellable
object, None
to ignore.
Returns
a SocketAddress
(owned by the caller), or None
on
error (in which case *error
will be set) or if there are no
more addresses.
sourcefn next_async<P: FnOnce(Result<Option<SocketAddress>, Error>) + 'static>(
&self,
cancellable: Option<&impl IsA<Cancellable>>,
callback: P
)
fn next_async<P: FnOnce(Result<Option<SocketAddress>, Error>) + 'static>( &self, cancellable: Option<&impl IsA<Cancellable>>, callback: P )
Asynchronously retrieves the next SocketAddress
from self
and then calls callback
, which must call
g_socket_address_enumerator_next_finish()
to get the result.
It is an error to call this multiple times before the previous callback has finished.
cancellable
optional Cancellable
object, None
to ignore.
callback
a GAsyncReadyCallback
to call when the request
is satisfied