So for people (like me) who were surprised by how modern the Java code looked like… here are the following features/JEPs involved in the Java code:
Finalized features:
- JEP 395: Records, finalized in Java 16: https://openjdk.org/jeps/395
- JEP 409: Sealed Classes, finalized in Java 17: https://openjdk.org/jeps/409
- JEP 441: Pattern Matching for switch, finalized in Java 21: https://openjdk.org/jeps/441
Preview Language Features:
- JEP 430: String Templates, preview language feature since Java 21: https://openjdk.org/jeps/430
- JEP 445: Unnamed Classes and Instance Main Methods, preview language feature since Java 21: https://openjdk.org/jeps/445