Crates.io | auto-future |
lib.rs | auto-future |
version | 1.0.0 |
source | src |
created_at | 2023-02-01 00:02:08.601571 |
updated_at | 2023-02-01 00:02:08.601571 |
description | For quickly making a struct into a future via an async fn |
homepage | |
repository | https://github.com/JosephLenton/auto-future |
max_upload_size | |
id | 773136 |
size | 5,074 |
This is for quickly making structs futurable, where the future implementation is an underlying async fn
.
See this example for details ...
use ::auto_future::AutoFuture;
struct ExampleStruct;
impl ExampleStruct {
async fn do_async_work(self) -> u32 {
// perform a bunch of awaited calls ...
123
}
}
impl IntoFuture for ExampleStruct {
type Output = u32;
type IntoFuture = AutoFuture<u32>;
fn into_future(self) -> Self::IntoFuture {
let raw_future = self.do_async_work();
AutoFuture::new(raw_future)
}
}