diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2022-02-21 19:36:46 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-02-21 19:36:46 +0100 |
| commit | 12705b47007f3244ef9d06d2281e1b20cb1dd0f1 (patch) | |
| tree | c27e13c6336c344df60dcab8a74cffeb0880ae50 | |
| parent | 1103d2e914b67c18b0deb86073c26c6aefda761d (diff) | |
| parent | 297364eb07a3f3d1dfab35fc6187202293ecffe0 (diff) | |
| download | rust-12705b47007f3244ef9d06d2281e1b20cb1dd0f1.tar.gz rust-12705b47007f3244ef9d06d2281e1b20cb1dd0f1.zip | |
Rollup merge of #91192 - r00ster91:futuredocs, r=GuillaumeGomez
Some improvements to the async docs The goal here is to make the docs overall a little bit more comprehensive and add more links between the things. One thing that's not working yet is the links to the keywords. Somehow I couldn't get them to work. r? ````@GuillaumeGomez```` do you know how I could get the keyword links to work?
| -rw-r--r-- | library/core/src/future/future.rs | 3 | ||||
| -rw-r--r-- | library/core/src/future/mod.rs | 9 | ||||
| -rw-r--r-- | library/std/src/keyword_docs.rs | 14 |
3 files changed, 18 insertions, 8 deletions
diff --git a/library/core/src/future/future.rs b/library/core/src/future/future.rs index 6b62236b32f..f29d3e1e98b 100644 --- a/library/core/src/future/future.rs +++ b/library/core/src/future/future.rs @@ -5,7 +5,7 @@ use crate::ops; use crate::pin::Pin; use crate::task::{Context, Poll}; -/// A future represents an asynchronous computation. +/// A future represents an asynchronous computation obtained by use of [`async`]. /// /// A future is a value that might not have finished computing yet. This kind of /// "asynchronous value" makes it possible for a thread to continue doing useful @@ -23,6 +23,7 @@ use crate::task::{Context, Poll}; /// When using a future, you generally won't call `poll` directly, but instead /// `.await` the value. /// +/// [`async`]: ../../std/keyword.async.html /// [`Waker`]: crate::task::Waker #[doc(notable_trait)] #[must_use = "futures do nothing unless you `.await` or poll them"] diff --git a/library/core/src/future/mod.rs b/library/core/src/future/mod.rs index 88db584aefd..9b89f766c67 100644 --- a/library/core/src/future/mod.rs +++ b/library/core/src/future/mod.rs @@ -1,6 +1,13 @@ #![stable(feature = "futures_api", since = "1.36.0")] -//! Asynchronous values. +//! Asynchronous basic functionality. +//! +//! Please see the fundamental [`async`] and [`await`] keywords and the [async book] +//! for more information on asynchronous programming in Rust. +//! +//! [`async`]: ../../std/keyword.async.html +//! [`await`]: ../../std/keyword.await.html +//! [async book]: https://rust-lang.github.io/async-book/ use crate::{ ops::{Generator, GeneratorState}, diff --git a/library/std/src/keyword_docs.rs b/library/std/src/keyword_docs.rs index 35d230eee96..5b76259afc1 100644 --- a/library/std/src/keyword_docs.rs +++ b/library/std/src/keyword_docs.rs @@ -2203,17 +2203,18 @@ mod where_keyword {} /// /// Use `async` in front of `fn`, `closure`, or a `block` to turn the marked code into a `Future`. /// As such the code will not be run immediately, but will only be evaluated when the returned -/// future is `.await`ed. +/// future is [`.await`]ed. /// -/// We have written an [async book] detailing async/await and trade-offs compared to using threads. +/// We have written an [async book] detailing `async`/`await` and trade-offs compared to using threads. /// /// ## Editions /// /// `async` is a keyword from the 2018 edition onwards. /// -/// It is available for use in stable rust from version 1.39 onwards. +/// It is available for use in stable Rust from version 1.39 onwards. /// /// [`Future`]: future::Future +/// [`.await`]: ../std/keyword.await.html /// [async book]: https://rust-lang.github.io/async-book/ mod async_keyword {} @@ -2221,19 +2222,20 @@ mod async_keyword {} // /// Suspend execution until the result of a [`Future`] is ready. /// -/// `.await`ing a future will suspend the current function's execution until the `executor` +/// `.await`ing a future will suspend the current function's execution until the executor /// has run the future to completion. /// -/// Read the [async book] for details on how async/await and executors work. +/// Read the [async book] for details on how [`async`]/`await` and executors work. /// /// ## Editions /// /// `await` is a keyword from the 2018 edition onwards. /// -/// It is available for use in stable rust from version 1.39 onwards. +/// It is available for use in stable Rust from version 1.39 onwards. /// /// [`Future`]: future::Future /// [async book]: https://rust-lang.github.io/async-book/ +/// [`async`]: ../std/keyword.async.html mod await_keyword {} #[doc(keyword = "dyn")] |
