#future #async #fn #quickly #auto #struct

auto-future

通过async fn快速将struct转换为future

1个稳定版本

1.0.0 2023年2月1日

#822异步

Download history 6808/week @ 2024-03-14 7024/week @ 2024-03-21 5693/week @ 2024-03-28 6897/week @ 2024-04-04 5809/week @ 2024-04-11 7927/week @ 2024-04-18 8980/week @ 2024-04-25 11197/week @ 2024-05-02 10441/week @ 2024-05-09 10415/week @ 2024-05-16 10020/week @ 2024-05-23 12403/week @ 2024-05-30 12724/week @ 2024-06-06 14341/week @ 2024-06-13 15231/week @ 2024-06-20 12276/week @ 2024-06-27

56,957 每月下载量
用于 33 个crate(2直接使用)

MIT 协议

4KB

Auto Future
一种易于构建可future的struct的方法

crate docs

这是快速将struct转换为future的方法,其中future实现是一个底层的 async fn

请参阅此示例以获取详细信息 ...

  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)
      }
  }

无运行时依赖