diff options
| author | Nicholas Nethercote <n.nethercote@gmail.com> | 2022-03-28 17:13:56 +1100 |
|---|---|---|
| committer | Nicholas Nethercote <n.nethercote@gmail.com> | 2022-03-30 10:54:37 +1100 |
| commit | 524d21bd5495ad9941597701e7e924ade3f60b53 (patch) | |
| tree | a1c50dfac7c6d4ad29df20a15acaa425b85c895c /src/test/ui/async-await/async-block-control-flow-static-semantics.rs | |
| parent | a1b140cdb70e1bcdffa9e6671b17fd69ef80c4f6 (diff) | |
| download | rust-524d21bd5495ad9941597701e7e924ade3f60b53.tar.gz rust-524d21bd5495ad9941597701e7e924ade3f60b53.zip | |
Overhaul how matches are recorded.
Currently, matches within a sequence are recorded in a new empty `matches` vector. Then when the sequence finishes the matches are merged into the `matches` vector of the parent. This commit changes things so that a sequence mp inherits the matches made so far. This means that additional matches from the sequence don't need to be merged into the parent. `push_match` becomes more complicated, and the current sequence depth needs to be tracked. But it's a sizeable performance win because it avoids one or more `push_match` calls on every iteration of a sequence. The commit also removes `match_hi`, which is no longer necessary.
Diffstat (limited to 'src/test/ui/async-await/async-block-control-flow-static-semantics.rs')
0 files changed, 0 insertions, 0 deletions
