Skip to content

Commit

Permalink
Rollup merge of #91192 - r00ster91:futuredocs, r=GuillaumeGomez
Browse files Browse the repository at this point in the history
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?
  • Loading branch information
matthiaskrgr committed Feb 21, 2022
2 parents 1103d2e + 297364e commit 12705b4
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 8 deletions.
3 changes: 2 additions & 1 deletion library/core/src/future/future.rs
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand All @@ -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"]
Expand Down
9 changes: 8 additions & 1 deletion library/core/src/future/mod.rs
Original file line number Diff line number Diff line change
@@ -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},
Expand Down
14 changes: 8 additions & 6 deletions library/std/src/keyword_docs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2203,37 +2203,39 @@ 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 {}

#[doc(keyword = "await")]
//
/// 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")]
Expand Down

0 comments on commit 12705b4

Please sign in to comment.