Struct futures_util::future::PollImmediate
source · pub struct PollImmediate<T> { /* private fields */ }
Expand description
Future for the poll_immediate
function.
It will never return Poll::Pending
Trait Implementations§
source§impl<T: Clone> Clone for PollImmediate<T>
impl<T: Clone> Clone for PollImmediate<T>
source§impl<T: Debug> Debug for PollImmediate<T>
impl<T: Debug> Debug for PollImmediate<T>
source§impl<T: Future> FusedFuture for PollImmediate<T>
impl<T: Future> FusedFuture for PollImmediate<T>
source§fn is_terminated(&self) -> bool
fn is_terminated(&self) -> bool
Returns
true
if the underlying future should no longer be polled.source§impl<T, F> Future for PollImmediate<F>where
F: Future<Output = T>,
impl<T, F> Future for PollImmediate<F>where
F: Future<Output = T>,
source§impl<T, F> Stream for PollImmediate<F>where
F: Future<Output = T>,
impl<T, F> Stream for PollImmediate<F>where
F: Future<Output = T>,
A Stream implementation that can be polled repeatedly until the future is done. The stream will never return Poll::Pending so polling it in a tight loop is worse than using a blocking synchronous function.
use futures::task::Poll;
use futures::{StreamExt, future, pin_mut};
use future::FusedFuture;
let f = async { 1_u32 };
pin_mut!(f);
let mut r = future::poll_immediate(f);
assert_eq!(r.next().await, Some(Poll::Ready(1)));
let f = async {futures::pending!(); 42_u8};
pin_mut!(f);
let mut p = future::poll_immediate(f);
assert_eq!(p.next().await, Some(Poll::Pending));
assert!(!p.is_terminated());
assert_eq!(p.next().await, Some(Poll::Ready(42)));
assert!(p.is_terminated());
assert_eq!(p.next().await, None);
impl<'__pin, T> Unpin for PollImmediate<T>where
__Origin<'__pin, T>: Unpin,
Auto Trait Implementations§
impl<T> RefUnwindSafe for PollImmediate<T>where
T: RefUnwindSafe,
impl<T> Send for PollImmediate<T>where
T: Send,
impl<T> Sync for PollImmediate<T>where
T: Sync,
impl<T> UnwindSafe for PollImmediate<T>where
T: UnwindSafe,
Blanket Implementations§
source§impl<F> IntoFuture for Fwhere
F: Future,
impl<F> IntoFuture for Fwhere
F: Future,
§type IntoFuture = F
type IntoFuture = F
Which kind of future are we turning this into?
source§fn into_future(self) -> <F as IntoFuture>::IntoFuture
fn into_future(self) -> <F as IntoFuture>::IntoFuture
Creates a future from a value. Read more