rust/library/core/src/future
Arpad Borsos 9f36f988ad
Avoid GenFuture shim when compiling async constructs
Previously, async constructs would be lowered to "normal" generators,
with an additional `from_generator` / `GenFuture` shim in between to
convert from `Generator` to `Future`.

The compiler will now special-case these generators internally so that
async constructs will *directly* implement `Future` without the need
to go through the `from_generator` / `GenFuture` shim.

The primary motivation for this change was hiding this implementation
detail in stack traces and debuginfo, but it can in theory also help
the optimizer as there is less abstractions to see through.
2022-11-24 10:04:27 +01:00
..
future.rs Rollup merge of #91192 - r00ster91:futuredocs, r=GuillaumeGomez 2022-02-21 19:36:46 +01:00
into_future.rs Stabilize into_future 2022-06-30 17:22:41 +02:00
join.rs Stabilize future_poll_fn 2022-07-16 10:04:14 +09:00
mod.rs Avoid GenFuture shim when compiling async constructs 2022-11-24 10:04:27 +01:00
pending.rs Also change PhantomData parameter of iter::Empty, and future::Pending 2022-01-07 01:53:51 +01:00
poll_fn.rs poll_fn and Unpin: fix pinning 2022-10-06 13:51:10 +02:00
ready.rs Implement Ready::into_inner() 2022-08-30 13:39:30 +02:00