RFR: 8300543 Compiler Implementation for Pattern Matching for switch [v7]
Jan Lahoda
jlahoda at openjdk.org
Tue Apr 25 11:47:47 UTC 2023
> This is the first draft of a patch for JEP 440 and JEP 441. Changes included:
>
> - the pattern matching for switch and record patterns features are made final, together with updates to tests.
> - parenthesized patterns are removed.
> - qualified enum constants are supported for case labels.
>
> This change herein also includes removal record patterns in for each loop, which may be split into a separate PR in the future.
Jan Lahoda has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 38 commits:
- Merge branch 'master' into JDK-8300543
- Reflecting review changes.
- Adding test.
- Removing redundant continue, as noted on the review.
- Replacing use of mutable callsite with a mutable state.
- Reflecting review feedback.
- Fixing infinite loop in exhaustiveness computation caused by re-adding bindings that are already in the list.
- Fixing infinite loop where a binding pattern is replaced with a binding pattern for the same type.
- Reflecting review comments.
- Fixing exhaustiveness for unsealed supertype pattern.
- ... and 28 more: https://git.openjdk.org/jdk/compare/a4a53858...35f51562
-------------
Changes: https://git.openjdk.org/jdk/pull/13074/files
Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=13074&range=06
Stats: 4160 lines in 158 files changed: 2033 ins; 1675 del; 452 mod
Patch: https://git.openjdk.org/jdk/pull/13074.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/13074/head:pull/13074
PR: https://git.openjdk.org/jdk/pull/13074
More information about the core-libs-dev
mailing list