Crate future_clicker

Source
Expand description

A Future value that resolves once it’s explicitly completed, potentially from a different thread or task, similar to Java’s CompletableFuture.

Currently, this is implemented using Mutex from the parking_lot crate.

§Examples

Create an incomplete ControlledFuture and explicitly complete it with the completer:

let (future, completer) = ControlledFuture::<i32>::new();
completer.complete(5).unwrap();
assert_eq!(block_on(future), Ok(5));

Create an initially complete ControlledFuture that can be immediately resolved:

assert_eq!(block_on(ControlledFuture::new_completed(10)), Ok(10));

Structs§

ControlledFuture
A Future that will resolve either immediately, or in the future.
FutureClicker
Used to complete a ControlledFuture so it may resolve to the given value.

Enums§

Error
Error returned by FutureClicker::complete and ControlledFuture future.

Type Aliases§

Result
Result of FutureClicker::complete and the ControlledFuture future.