File tree Expand file tree Collapse file tree 1 file changed +29
-0
lines changed Expand file tree Collapse file tree 1 file changed +29
-0
lines changed Original file line number Diff line number Diff line change 11use crate :: future:: Future ;
22
33/// Convert a type into a `Future`.
4+ ///
5+ /// # Examples
6+ ///
7+ /// ```
8+ /// use async_std::future::{Future, IntoFuture};
9+ /// use async_std::io;
10+ /// use async_std::pin::Pin;
11+ ///
12+ /// struct Client;
13+ ///
14+ /// impl Client {
15+ /// pub async fn send(self) -> io::Result<()> {
16+ /// // Send a request
17+ /// Ok(())
18+ /// }
19+ /// }
20+ ///
21+ /// impl IntoFuture for Client {
22+ /// type Output = io::Result<()>;
23+ ///
24+ /// type Future = Pin<Box<dyn Future<Output = Self::Output>>>;
25+ ///
26+ /// fn into_future(self) -> Self::Future {
27+ /// Box::pin(async {
28+ /// self.send().await
29+ /// })
30+ /// }
31+ /// }
32+ /// ```
433pub trait IntoFuture {
534 /// The type of value produced on completion.
635 type Output ;
You can’t perform that action at this time.
0 commit comments