pub struct AsyncCanSocket<T: Socket>(/* private fields */);tokio only.Expand description
An asynchronous I/O wrapped CanSocket
Implementations§
Source§impl AsyncCanSocket<CanSocket>
impl AsyncCanSocket<CanSocket>
Sourcepub async fn write_frame(&self, frame: CanFrame) -> IoResult<()>
pub async fn write_frame(&self, frame: CanFrame) -> IoResult<()>
Write a CAN frame to the socket asynchronously
Sourcepub fn try_write_frame(&self, frame: CanFrame) -> IoResult<()>
pub fn try_write_frame(&self, frame: CanFrame) -> IoResult<()>
Attempt to write a CAN frame to the socket without blocking.
Returns WouldBlock if the send buffer is full.
Bypasses the tokio readiness reactor: this call goes straight to
the underlying non-blocking fd, so no AsyncFd readiness event is
consumed. Mixing with write_frame on the same
socket is safe — the async path will simply re-check OS-level
readiness on its next poll and may briefly round-trip through
WouldBlock before re-arming.
Sourcepub async fn read_frame(&self) -> IoResult<CanFrame>
pub async fn read_frame(&self) -> IoResult<CanFrame>
Read a CAN frame from the socket asynchronously
Sourcepub fn try_read_frame(&self) -> IoResult<CanFrame>
pub fn try_read_frame(&self) -> IoResult<CanFrame>
Attempt to read a CAN frame from the socket without blocking.
Returns WouldBlock if no frame is immediately available.
Bypasses the tokio readiness reactor: this call goes straight to
the underlying non-blocking fd, so no AsyncFd readiness event is
consumed. Mixing with read_frame on the same
socket is safe — the async path will simply re-check OS-level
readiness on its next poll and may briefly round-trip through
WouldBlock before re-arming.
Sourcepub fn has_hw_timestamps(&self) -> bool
pub fn has_hw_timestamps(&self) -> bool
Returns true if the bound interface supports hardware receive timestamps.
Sourcepub async fn read_frame_with_timestamp(
&self,
) -> IoResult<(CanFrame, SystemTime)>
pub async fn read_frame_with_timestamp( &self, ) -> IoResult<(CanFrame, SystemTime)>
Read a CAN frame and its socket-layer arrival timestamp asynchronously.
Requires SocketOptions::set_recv_timestamp to be called first.
Sourcepub async fn read_frame_with_timestamps(
&self,
) -> IoResult<(CanFrame, CanTimestamps)>
pub async fn read_frame_with_timestamps( &self, ) -> IoResult<(CanFrame, CanTimestamps)>
Read a CAN frame and all available timestamps asynchronously.
Timestamp fields are None for modes not enabled on the socket.
Sourcepub async fn read_frame_with_hw_timestamp(
&self,
) -> IoResult<(CanFrame, Duration)>
pub async fn read_frame_with_hw_timestamp( &self, ) -> IoResult<(CanFrame, Duration)>
Read a CAN frame and its raw hardware clock timestamp asynchronously.
Requires SocketOptions::set_timestamping with
SOF_TIMESTAMPING_RX_HARDWARE | SOF_TIMESTAMPING_OPT_CMSG to be called first.
Source§impl AsyncCanSocket<CanFdSocket>
impl AsyncCanSocket<CanFdSocket>
Sourcepub async fn write_frame<F>(&self, frame: &F) -> IoResult<()>
pub async fn write_frame<F>(&self, frame: &F) -> IoResult<()>
Write a CAN FD frame to the socket asynchronously
Sourcepub fn try_write_frame<F>(&self, frame: &F) -> IoResult<()>
pub fn try_write_frame<F>(&self, frame: &F) -> IoResult<()>
Attempt to write a CAN frame to the socket without blocking.
Returns WouldBlock if the send buffer is full.
Bypasses the tokio readiness reactor: this call goes straight to
the underlying non-blocking fd, so no AsyncFd readiness event is
consumed. Mixing with write_frame on the same
socket is safe — the async path will simply re-check OS-level
readiness on its next poll and may briefly round-trip through
WouldBlock before re-arming.
Sourcepub async fn read_frame(&self) -> IoResult<CanAnyFrame>
pub async fn read_frame(&self) -> IoResult<CanAnyFrame>
Reads a CAN FD frame from the socket asynchronously
Sourcepub fn try_read_frame(&self) -> IoResult<CanAnyFrame>
pub fn try_read_frame(&self) -> IoResult<CanAnyFrame>
Attempt to read a CAN frame from the socket without blocking.
Returns WouldBlock if no frame is immediately available.
Bypasses the tokio readiness reactor: this call goes straight to
the underlying non-blocking fd, so no AsyncFd readiness event is
consumed. Mixing with read_frame on the same
socket is safe — the async path will simply re-check OS-level
readiness on its next poll and may briefly round-trip through
WouldBlock before re-arming.
Sourcepub fn has_hw_timestamps(&self) -> bool
pub fn has_hw_timestamps(&self) -> bool
Returns true if the bound interface supports hardware receive timestamps.
Sourcepub async fn read_frame_with_timestamp(
&self,
) -> IoResult<(CanAnyFrame, SystemTime)>
pub async fn read_frame_with_timestamp( &self, ) -> IoResult<(CanAnyFrame, SystemTime)>
Read a CAN frame and its socket-layer arrival timestamp asynchronously.
Requires SocketOptions::set_recv_timestamp to be called first.
Sourcepub async fn read_frame_with_timestamps(
&self,
) -> IoResult<(CanAnyFrame, CanTimestamps)>
pub async fn read_frame_with_timestamps( &self, ) -> IoResult<(CanAnyFrame, CanTimestamps)>
Read a CAN frame and all available timestamps asynchronously.
Timestamp fields are None for modes not enabled on the socket.
Sourcepub async fn read_frame_with_hw_timestamp(
&self,
) -> IoResult<(CanAnyFrame, Duration)>
pub async fn read_frame_with_hw_timestamp( &self, ) -> IoResult<(CanAnyFrame, Duration)>
Read a CAN frame and its raw hardware clock timestamp asynchronously.
Requires SocketOptions::set_timestamping with
SOF_TIMESTAMPING_RX_HARDWARE | SOF_TIMESTAMPING_OPT_CMSG to be called first.
Trait Implementations§
Source§impl<T: Socket> AsRawFd for AsyncCanSocket<T>
impl<T: Socket> AsRawFd for AsyncCanSocket<T>
Source§impl<T: Socket> SocketOptions for AsyncCanSocket<T>
impl<T: Socket> SocketOptions for AsyncCanSocket<T>
Source§fn set_socket_option<T>(
&self,
level: c_int,
name: c_int,
val: &T,
) -> IoResult<()>
fn set_socket_option<T>( &self, level: c_int, name: c_int, val: &T, ) -> IoResult<()>
Source§fn set_socket_option_mult<T>(
&self,
level: c_int,
name: c_int,
values: &[T],
) -> IoResult<()>
fn set_socket_option_mult<T>( &self, level: c_int, name: c_int, values: &[T], ) -> IoResult<()>
Source§fn set_filters<F>(&self, filters: &[F]) -> IoResult<()>
fn set_filters<F>(&self, filters: &[F]) -> IoResult<()>
Source§fn set_filter_accept_all(&self) -> IoResult<()>
fn set_filter_accept_all(&self) -> IoResult<()>
Source§fn set_error_filter(&self, mask: u32) -> IoResult<()>
fn set_error_filter(&self, mask: u32) -> IoResult<()>
Source§fn set_error_filter_drop_all(&self) -> IoResult<()>
fn set_error_filter_drop_all(&self) -> IoResult<()>
Source§fn set_error_filter_accept_all(&self) -> IoResult<()>
fn set_error_filter_accept_all(&self) -> IoResult<()>
Source§fn set_error_mask(&self, mask: u32) -> IoResult<()>
fn set_error_mask(&self, mask: u32) -> IoResult<()>
Source§fn set_recv_own_msgs(&self, enabled: bool) -> IoResult<()>
fn set_recv_own_msgs(&self, enabled: bool) -> IoResult<()>
Source§fn set_join_filters(&self, enabled: bool) -> IoResult<()>
fn set_join_filters(&self, enabled: bool) -> IoResult<()>
Auto Trait Implementations§
impl<T> !RefUnwindSafe for AsyncCanSocket<T>
impl<T> !UnwindSafe for AsyncCanSocket<T>
impl<T> Freeze for AsyncCanSocket<T>where
T: Freeze,
impl<T> Send for AsyncCanSocket<T>where
T: Send,
impl<T> Sync for AsyncCanSocket<T>where
T: Sync,
impl<T> Unpin for AsyncCanSocket<T>where
T: Unpin,
impl<T> UnsafeUnpin for AsyncCanSocket<T>where
T: UnsafeUnpin,
Blanket Implementations§
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T, Item> SinkExt<Item> for T
impl<T, Item> SinkExt<Item> for T
Source§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>
Source§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>
Source§fn sink_map_err<E, F>(self, f: F) -> SinkMapErr<Self, F>
fn sink_map_err<E, F>(self, f: F) -> SinkMapErr<Self, F>
Source§fn sink_err_into<E>(self) -> SinkErrInto<Self, Item, E>
fn sink_err_into<E>(self) -> SinkErrInto<Self, Item, E>
Into trait. Read moreSource§fn buffer(self, capacity: usize) -> Buffer<Self, Item>where
Self: Sized,
fn buffer(self, capacity: usize) -> Buffer<Self, Item>where
Self: Sized,
alloc only.Source§fn flush(&mut self) -> Flush<'_, Self, Item>where
Self: Unpin,
fn flush(&mut self) -> Flush<'_, Self, Item>where
Self: Unpin,
Source§fn send(&mut self, item: Item) -> Send<'_, Self, Item>where
Self: Unpin,
fn send(&mut self, item: Item) -> Send<'_, Self, Item>where
Self: Unpin,
Source§fn feed(&mut self, item: Item) -> Feed<'_, Self, Item>where
Self: Unpin,
fn feed(&mut self, item: Item) -> Feed<'_, Self, Item>where
Self: Unpin,
Source§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>
Source§fn right_sink<Si1>(self) -> Either<Si1, Self>
fn right_sink<Si1>(self) -> Either<Si1, Self>
Source§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,
Sink::poll_ready on Unpin
sink types.Source§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,
Sink::start_send on Unpin
sink types.Source§impl<T> StreamExt for T
impl<T> StreamExt for T
Source§fn next(&mut self) -> Next<'_, Self>where
Self: Unpin,
fn next(&mut self) -> Next<'_, Self>where
Self: Unpin,
Source§fn into_future(self) -> StreamFuture<Self>
fn into_future(self) -> StreamFuture<Self>
Source§fn map<T, F>(self, f: F) -> Map<Self, F>
fn map<T, F>(self, f: F) -> Map<Self, F>
Source§fn enumerate(self) -> Enumerate<Self>where
Self: Sized,
fn enumerate(self) -> Enumerate<Self>where
Self: Sized,
Source§fn filter<Fut, F>(self, f: F) -> Filter<Self, Fut, F>
fn filter<Fut, F>(self, f: F) -> Filter<Self, Fut, F>
Source§fn filter_map<Fut, T, F>(self, f: F) -> FilterMap<Self, Fut, F>
fn filter_map<Fut, T, F>(self, f: F) -> FilterMap<Self, Fut, F>
Source§fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F>
fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F>
Source§fn collect<C>(self) -> Collect<Self, C>
fn collect<C>(self) -> Collect<Self, C>
Source§fn unzip<A, B, FromA, FromB>(self) -> Unzip<Self, FromA, FromB>
fn unzip<A, B, FromA, FromB>(self) -> Unzip<Self, FromA, FromB>
Source§fn concat(self) -> Concat<Self>
fn concat(self) -> Concat<Self>
Source§fn count(self) -> Count<Self>where
Self: Sized,
fn count(self) -> Count<Self>where
Self: Sized,
Source§fn fold<T, Fut, F>(self, init: T, f: F) -> Fold<Self, Fut, T, F>
fn fold<T, Fut, F>(self, init: T, f: F) -> Fold<Self, Fut, T, F>
Source§fn any<Fut, F>(self, f: F) -> Any<Self, Fut, F>
fn any<Fut, F>(self, f: F) -> Any<Self, Fut, F>
true if any element in stream satisfied a predicate. Read moreSource§fn all<Fut, F>(self, f: F) -> All<Self, Fut, F>
fn all<Fut, F>(self, f: F) -> All<Self, Fut, F>
true if all element in stream satisfied a predicate. Read moreSource§fn flatten(self) -> Flatten<Self>
fn flatten(self) -> Flatten<Self>
Source§fn flatten_unordered(
self,
limit: impl Into<Option<usize>>,
) -> FlattenUnorderedWithFlowController<Self, ()>
fn flatten_unordered( self, limit: impl Into<Option<usize>>, ) -> FlattenUnorderedWithFlowController<Self, ()>
alloc only.Source§fn flat_map_unordered<U, F>(
self,
limit: impl Into<Option<usize>>,
f: F,
) -> FlatMapUnordered<Self, U, F>
fn flat_map_unordered<U, F>( self, limit: impl Into<Option<usize>>, f: F, ) -> FlatMapUnordered<Self, U, F>
alloc only.StreamExt::map but flattens nested Streams
and polls them concurrently, yielding items in any order, as they made
available. Read moreSource§fn scan<S, B, Fut, F>(self, initial_state: S, f: F) -> Scan<Self, S, Fut, F>
fn scan<S, B, Fut, F>(self, initial_state: S, f: F) -> Scan<Self, S, Fut, F>
StreamExt::fold that holds internal state
and produces a new stream. Read moreSource§fn skip_while<Fut, F>(self, f: F) -> SkipWhile<Self, Fut, F>
fn skip_while<Fut, F>(self, f: F) -> SkipWhile<Self, Fut, F>
true. Read moreSource§fn take_while<Fut, F>(self, f: F) -> TakeWhile<Self, Fut, F>
fn take_while<Fut, F>(self, f: F) -> TakeWhile<Self, Fut, F>
true. Read moreSource§fn take_until<Fut>(self, fut: Fut) -> TakeUntil<Self, Fut>
fn take_until<Fut>(self, fut: Fut) -> TakeUntil<Self, Fut>
Source§fn for_each<Fut, F>(self, f: F) -> ForEach<Self, Fut, F>
fn for_each<Fut, F>(self, f: F) -> ForEach<Self, Fut, F>
Source§fn for_each_concurrent<Fut, F>(
self,
limit: impl Into<Option<usize>>,
f: F,
) -> ForEachConcurrent<Self, Fut, F>
fn for_each_concurrent<Fut, F>( self, limit: impl Into<Option<usize>>, f: F, ) -> ForEachConcurrent<Self, Fut, F>
alloc only.Source§fn take(self, n: usize) -> Take<Self>where
Self: Sized,
fn take(self, n: usize) -> Take<Self>where
Self: Sized,
n items of the underlying stream. Read moreSource§fn skip(self, n: usize) -> Skip<Self>where
Self: Sized,
fn skip(self, n: usize) -> Skip<Self>where
Self: Sized,
n items of the underlying stream. Read moreSource§fn catch_unwind(self) -> CatchUnwind<Self>where
Self: Sized + UnwindSafe,
fn catch_unwind(self) -> CatchUnwind<Self>where
Self: Sized + UnwindSafe,
std only.Source§fn boxed<'a>(self) -> Pin<Box<dyn Stream<Item = Self::Item> + Send + 'a>>
fn boxed<'a>(self) -> Pin<Box<dyn Stream<Item = Self::Item> + Send + 'a>>
alloc only.Source§fn boxed_local<'a>(self) -> Pin<Box<dyn Stream<Item = Self::Item> + 'a>>where
Self: Sized + 'a,
fn boxed_local<'a>(self) -> Pin<Box<dyn Stream<Item = Self::Item> + 'a>>where
Self: Sized + 'a,
alloc only.Source§fn buffered(self, n: usize) -> Buffered<Self>
fn buffered(self, n: usize) -> Buffered<Self>
alloc only.Source§fn buffer_unordered(self, n: usize) -> BufferUnordered<Self>
fn buffer_unordered(self, n: usize) -> BufferUnordered<Self>
alloc only.Source§fn zip<St>(self, other: St) -> Zip<Self, St>
fn zip<St>(self, other: St) -> Zip<Self, St>
Source§fn peekable(self) -> Peekable<Self>where
Self: Sized,
fn peekable(self) -> Peekable<Self>where
Self: Sized,
peek method. Read moreSource§fn chunks(self, capacity: usize) -> Chunks<Self>where
Self: Sized,
fn chunks(self, capacity: usize) -> Chunks<Self>where
Self: Sized,
alloc only.Source§fn ready_chunks(self, capacity: usize) -> ReadyChunks<Self>where
Self: Sized,
fn ready_chunks(self, capacity: usize) -> ReadyChunks<Self>where
Self: Sized,
alloc only.Source§fn forward<S>(self, sink: S) -> Forward<Self, S>
fn forward<S>(self, sink: S) -> Forward<Self, S>
sink only.Source§fn split<Item>(self) -> (SplitSink<Self, Item>, SplitStream<Self>)
fn split<Item>(self) -> (SplitSink<Self, Item>, SplitStream<Self>)
alloc and sink only.Source§fn inspect<F>(self, f: F) -> Inspect<Self, F>
fn inspect<F>(self, f: F) -> Inspect<Self, F>
Source§fn left_stream<B>(self) -> Either<Self, B>
fn left_stream<B>(self) -> Either<Self, B>
Source§fn right_stream<B>(self) -> Either<B, Self>
fn right_stream<B>(self) -> Either<B, Self>
Source§fn poll_next_unpin(&mut self, cx: &mut Context<'_>) -> Poll<Option<Self::Item>>where
Self: Unpin,
fn poll_next_unpin(&mut self, cx: &mut Context<'_>) -> Poll<Option<Self::Item>>where
Self: Unpin,
Stream::poll_next on Unpin
stream types.Source§fn select_next_some(&mut self) -> SelectNextSome<'_, Self>where
Self: Unpin + FusedStream,
fn select_next_some(&mut self) -> SelectNextSome<'_, Self>where
Self: Unpin + FusedStream,
Source§impl<S> TryStreamExt for S
impl<S> TryStreamExt for S
Source§fn err_into<E>(self) -> ErrInto<Self, E>
fn err_into<E>(self) -> ErrInto<Self, E>
Source§fn map_ok<T, F>(self, f: F) -> MapOk<Self, F>
fn map_ok<T, F>(self, f: F) -> MapOk<Self, F>
Source§fn map_err<E, F>(self, f: F) -> MapErr<Self, F>
fn map_err<E, F>(self, f: F) -> MapErr<Self, F>
Source§fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F>
fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F>
f. Read moreSource§fn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F>
fn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F>
f. Read moreSource§fn inspect_ok<F>(self, f: F) -> InspectOk<Self, F>
fn inspect_ok<F>(self, f: F) -> InspectOk<Self, F>
Source§fn inspect_err<F>(self, f: F) -> InspectErr<Self, F>
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F>
Source§fn into_stream(self) -> IntoStream<Self>where
Self: Sized,
fn into_stream(self) -> IntoStream<Self>where
Self: Sized,
Source§fn try_next(&mut self) -> TryNext<'_, Self>where
Self: Unpin,
fn try_next(&mut self) -> TryNext<'_, Self>where
Self: Unpin,
Source§fn try_for_each<Fut, F>(self, f: F) -> TryForEach<Self, Fut, F>
fn try_for_each<Fut, F>(self, f: F) -> TryForEach<Self, Fut, F>
Source§fn try_skip_while<Fut, F>(self, f: F) -> TrySkipWhile<Self, Fut, F>
fn try_skip_while<Fut, F>(self, f: F) -> TrySkipWhile<Self, Fut, F>
true. Read moreSource§fn try_take_while<Fut, F>(self, f: F) -> TryTakeWhile<Self, Fut, F>
fn try_take_while<Fut, F>(self, f: F) -> TryTakeWhile<Self, Fut, F>
true. Read moreSource§fn try_for_each_concurrent<Fut, F>(
self,
limit: impl Into<Option<usize>>,
f: F,
) -> TryForEachConcurrent<Self, Fut, F>
fn try_for_each_concurrent<Fut, F>( self, limit: impl Into<Option<usize>>, f: F, ) -> TryForEachConcurrent<Self, Fut, F>
alloc only.Source§fn try_collect<C>(self) -> TryCollect<Self, C>
fn try_collect<C>(self) -> TryCollect<Self, C>
Source§fn try_chunks(self, capacity: usize) -> TryChunks<Self>where
Self: Sized,
fn try_chunks(self, capacity: usize) -> TryChunks<Self>where
Self: Sized,
alloc only.Source§fn try_ready_chunks(self, capacity: usize) -> TryReadyChunks<Self>where
Self: Sized,
fn try_ready_chunks(self, capacity: usize) -> TryReadyChunks<Self>where
Self: Sized,
alloc only.Source§fn try_filter<Fut, F>(self, f: F) -> TryFilter<Self, Fut, F>
fn try_filter<Fut, F>(self, f: F) -> TryFilter<Self, Fut, F>
Source§fn try_filter_map<Fut, F, T>(self, f: F) -> TryFilterMap<Self, Fut, F>
fn try_filter_map<Fut, F, T>(self, f: F) -> TryFilterMap<Self, Fut, F>
Source§fn try_flatten_unordered(
self,
limit: impl Into<Option<usize>>,
) -> TryFlattenUnordered<Self>
fn try_flatten_unordered( self, limit: impl Into<Option<usize>>, ) -> TryFlattenUnordered<Self>
alloc only.Source§fn try_flatten(self) -> TryFlatten<Self>
fn try_flatten(self) -> TryFlatten<Self>
Source§fn try_fold<T, Fut, F>(self, init: T, f: F) -> TryFold<Self, Fut, T, F>
fn try_fold<T, Fut, F>(self, init: T, f: F) -> TryFold<Self, Fut, T, F>
Source§fn try_concat(self) -> TryConcat<Self>
fn try_concat(self) -> TryConcat<Self>
Source§fn try_buffer_unordered(self, n: usize) -> TryBufferUnordered<Self>
fn try_buffer_unordered(self, n: usize) -> TryBufferUnordered<Self>
alloc only.Source§fn try_buffered(self, n: usize) -> TryBuffered<Self>
fn try_buffered(self, n: usize) -> TryBuffered<Self>
alloc only.Source§fn try_poll_next_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Option<Result<Self::Ok, Self::Error>>>where
Self: Unpin,
fn try_poll_next_unpin(
&mut self,
cx: &mut Context<'_>,
) -> Poll<Option<Result<Self::Ok, Self::Error>>>where
Self: Unpin,
TryStream::try_poll_next on Unpin
stream types.Source§fn into_async_read(self) -> IntoAsyncRead<Self>
fn into_async_read(self) -> IntoAsyncRead<Self>
io and std only.AsyncBufRead. Read moreSource§fn try_all<Fut, F>(self, f: F) -> TryAll<Self, Fut, F>
fn try_all<Fut, F>(self, f: F) -> TryAll<Self, Fut, F>
Err is encountered or if an Ok item is found
that does not satisfy the predicate. Read more