Make closures carry their own ClosureKind Right now, we use the "`movability`" field of `hir::Closure` to distinguish a closure and a coroutine. This is paired together with the `CoroutineKind`, which is located not in the `hir::Closure`, but the `hir::Body`. This is strange and redundant. This PR introduces `ClosureKind` with two variants -- `Closure` and `Coroutine`, which is put into `hir::Closure`. The `CoroutineKind` is thus removed from `hir::Body`, and `Option<Movability>` no longer needs to be a stand-in for "is this a closure or a coroutine". r? eholk |
||
|---|---|---|
| .. | ||
| back | ||
| debuginfo | ||
| mir | ||
| traits | ||
| assert_module_sources.rs | ||
| base.rs | ||
| codegen_attrs.rs | ||
| common.rs | ||
| errors.rs | ||
| lib.rs | ||
| meth.rs | ||
| mono_item.rs | ||
| size_of_val.rs | ||
| target_features.rs | ||