pub struct ClientSink { /* private fields */ }
Expand description
The send half of a relay client.
Trait Implementations§
Source§impl Debug for ClientSink
impl Debug for ClientSink
Source§impl Sink<SendMessage> for ClientSink
impl Sink<SendMessage> for ClientSink
Source§type Error = ConnSendError
type Error = ConnSendError
The type of value produced by the sink when an error occurs.
Source§fn poll_ready(
self: Pin<&mut Self>,
cx: &mut Context<'_>,
) -> Poll<Result<(), Self::Error>>
fn poll_ready( self: Pin<&mut Self>, cx: &mut Context<'_>, ) -> Poll<Result<(), Self::Error>>
Attempts to prepare the
Sink
to receive a value. Read moreSource§fn start_send(
self: Pin<&mut Self>,
item: SendMessage,
) -> Result<(), Self::Error>
fn start_send( self: Pin<&mut Self>, item: SendMessage, ) -> Result<(), Self::Error>
Begin the process of sending a value to the sink.
Each call to this function must be preceded by a successful call to
poll_ready
which returned Poll::Ready(Ok(()))
. Read moreAuto Trait Implementations§
impl !Freeze for ClientSink
impl !RefUnwindSafe for ClientSink
impl Send for ClientSink
impl Sync for ClientSink
impl Unpin for ClientSink
impl !UnwindSafe for ClientSink
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CompatExt for T
impl<T> CompatExt for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T, Item> SinkExt<Item> for Twhere
T: Sink<Item> + ?Sized,
impl<T, Item> SinkExt<Item> for Twhere
T: Sink<Item> + ?Sized,
§fn with<U, Fut, F, E>(self, f: F) -> With<Self, Item, U, Fut, F>
fn with<U, Fut, F, E>(self, f: F) -> With<Self, Item, U, Fut, F>
Composes a function in front of the sink. Read more
§fn with_flat_map<U, St, F>(self, f: F) -> WithFlatMap<Self, Item, U, St, F>
fn with_flat_map<U, St, F>(self, f: F) -> WithFlatMap<Self, Item, U, St, F>
Composes a function in front of the sink. Read more
§fn sink_map_err<E, F>(self, f: F) -> SinkMapErr<Self, F>
fn sink_map_err<E, F>(self, f: F) -> SinkMapErr<Self, F>
Transforms the error returned by the sink.
§fn sink_err_into<E>(self) -> SinkErrInto<Self, Item, E>
fn sink_err_into<E>(self) -> SinkErrInto<Self, Item, E>
Map this sink’s error to a different error type using the
Into
trait. Read more§fn buffer(self, capacity: usize) -> Buffer<Self, Item>where
Self: Sized,
fn buffer(self, capacity: usize) -> Buffer<Self, Item>where
Self: Sized,
Available on crate feature
alloc
only.Adds a fixed-size buffer to the current sink. Read more
§fn flush(&mut self) -> Flush<'_, Self, Item>where
Self: Unpin,
fn flush(&mut self) -> Flush<'_, Self, Item>where
Self: Unpin,
Flush the sink, processing all pending items. Read more
§fn send(&mut self, item: Item) -> Send<'_, Self, Item>where
Self: Unpin,
fn send(&mut self, item: Item) -> Send<'_, Self, Item>where
Self: Unpin,
A future that completes after the given item has been fully processed
into the sink, including flushing. Read more
§fn feed(&mut self, item: Item) -> Feed<'_, Self, Item>where
Self: Unpin,
fn feed(&mut self, item: Item) -> Feed<'_, Self, Item>where
Self: Unpin,
A future that completes after the given item has been received
by the sink. Read more
§fn send_all<'a, St>(&'a mut self, stream: &'a mut St) -> SendAll<'a, Self, St>
fn send_all<'a, St>(&'a mut self, stream: &'a mut St) -> SendAll<'a, Self, St>
A future that completes after the given stream has been fully processed
into the sink, including flushing. Read more
§fn left_sink<Si2>(self) -> Either<Self, Si2>where
Si2: Sink<Item, Error = Self::Error>,
Self: Sized,
fn left_sink<Si2>(self) -> Either<Self, Si2>where
Si2: Sink<Item, Error = Self::Error>,
Self: Sized,
§fn right_sink<Si1>(self) -> Either<Si1, Self>where
Si1: Sink<Item, Error = Self::Error>,
Self: Sized,
fn right_sink<Si1>(self) -> Either<Si1, Self>where
Si1: Sink<Item, Error = Self::Error>,
Self: Sized,
§fn poll_ready_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<(), Self::Error>>where
Self: Unpin,
fn poll_ready_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Result<(), Self::Error>>where
Self: Unpin,
A convenience method for calling [
Sink::poll_ready
] on Unpin
sink types.§fn start_send_unpin(&mut self, item: Item) -> Result<(), Self::Error>where
Self: Unpin,
fn start_send_unpin(&mut self, item: Item) -> Result<(), Self::Error>where
Self: Unpin,
A convenience method for calling [
Sink::start_send
] on Unpin
sink types.§impl<Item, S> SinkRateLimitExt<Item, S> for Swhere
S: Sink<Item>,
impl<Item, S> SinkRateLimitExt<Item, S> for Swhere
S: Sink<Item>,
§fn ratelimit_sink<D, C, MW>(
self,
limiter: &RateLimiter<NotKeyed, D, C, MW>,
) -> RatelimitedSink<'_, Item, S, D, C, MW>where
D: DirectStateStore,
C: ReasonablyRealtime,
MW: RateLimitingMiddleware<<C as Clock>::Instant, NegativeOutcome = NotUntil<<C as Clock>::Instant>>,
fn ratelimit_sink<D, C, MW>(
self,
limiter: &RateLimiter<NotKeyed, D, C, MW>,
) -> RatelimitedSink<'_, Item, S, D, C, MW>where
D: DirectStateStore,
C: ReasonablyRealtime,
MW: RateLimitingMiddleware<<C as Clock>::Instant, NegativeOutcome = NotUntil<<C as Clock>::Instant>>,
Limits the rate at which items can be put into the current sink.
§fn ratelimit_sink_with_jitter<D, C, MW>(
self,
limiter: &RateLimiter<NotKeyed, D, C, MW>,
jitter: Jitter,
) -> RatelimitedSink<'_, Item, S, D, C, MW>where
D: DirectStateStore,
C: ReasonablyRealtime,
MW: RateLimitingMiddleware<<C as Clock>::Instant, NegativeOutcome = NotUntil<<C as Clock>::Instant>>,
fn ratelimit_sink_with_jitter<D, C, MW>(
self,
limiter: &RateLimiter<NotKeyed, D, C, MW>,
jitter: Jitter,
) -> RatelimitedSink<'_, Item, S, D, C, MW>where
D: DirectStateStore,
C: ReasonablyRealtime,
MW: RateLimitingMiddleware<<C as Clock>::Instant, NegativeOutcome = NotUntil<<C as Clock>::Instant>>,
Available on crate feature
jitter
only.Limits the rate at which items can be put into the current sink, with a randomized wait
period.