pub trait Outbound:
Send
+ Sync
+ Debug {
// Required method
fn fetch(&self, request: &Request, stop: &Stop) -> Result<Reply, Failure>;
}Expand description
Somewhere for an outbound request to go.
Required Methods§
Sourcefn fetch(&self, request: &Request, stop: &Stop) -> Result<Reply, Failure>
fn fetch(&self, request: &Request, stop: &Stop) -> Result<Reply, Failure>
Make the exchange, watching stop while it is in flight.
stop is a parameter rather than a default-implemented second method on purpose: an
implementation that ignores it is one a parallel: cannot cancel, and a seam whose
implementations can opt out of a property by not mentioning it is
docs/82 §82.10’s gate that cannot fail. Every
implementation has to say what it does about this, even if what it does is nothing because
it never blocks.