Struct lightning::util::wakers::Future

source ·
pub struct Future { /* private fields */ }
Expand description

A simple future which can complete once, and calls some callback(s) when it does so.

Clones can be made and all futures cloned from the same source will complete at the same time.

Implementations§

source§

impl Future

source

pub fn register_callback(&self, callback: Box<dyn FutureCallback>)

Registers a callback to be called upon completion of this future. If the future has already completed, the callback will be called immediately.

This is not exported to bindings users, use the bindings-only register_callback_fn instead

source

pub fn wait(self)

Available on crate feature std only.

Waits until this Future completes.

source

pub fn wait_timeout(self, max_wait: Duration) -> bool

Available on crate feature std only.

Waits until this Future completes or the given amount of time has elapsed.

Returns true if the Future completed, false if the time elapsed.

Trait Implementations§

source§

impl Clone for Future

source§

fn clone(&self) -> Future

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'a> Future for Future

This is not exported to bindings users as Rust Futures aren’t usable in language bindings.

§

type Output = ()

The type of value produced on completion.
source§

fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Self::Output>

Attempt to resolve the future to a final value, registering the current task for wakeup if the value is not yet available. Read more

Auto Trait Implementations§

§

impl Freeze for Future

§

impl RefUnwindSafe for Future

§

impl Send for Future

§

impl Sync for Future

§

impl Unpin for Future

§

impl UnwindSafe for Future

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<F> IntoFuture for F
where F: Future,

§

type Output = <F as Future>::Output

The output that the future will produce on completion.
§

type IntoFuture = F

Which kind of future are we turning this into?
source§

fn into_future(self) -> <F as IntoFuture>::IntoFuture

Creates a future from a value. Read more
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.