pub trait Discover: Sealed<Change<(), ()>> {
type Key: Eq;
type Service;
type Error;
fn poll_discover(
self: Pin<&mut Self>,
cx: &mut Context<'_>
) -> Poll<Option<Result<Change<Self::Key, Self::Service>, Self::Error>>>;
}
Expand description
A dynamically changing set of related services.
As new services arrive and old services are retired,
Change
s are returned which provide unique identifiers
for the services.
See the module documentation for more details.
Required Associated Types
sourcetype Key: Eq
type Key: Eq
A unique identifier for each active service.
An identifier can be re-used once a Change::Remove
has been yielded for its service.