<i18n dev> RFR: 8366178: Implement JEP 526: Lazy Constants (Second Preview)
Chen Liang
liach at openjdk.org
Mon Oct 13 11:51:15 UTC 2025
On Thu, 2 Oct 2025 15:21:37 GMT, Jefferson Quesado <duke at openjdk.org> wrote:
>> Implement JEP 526: Lazy Constants (Second Preview)
>>
>> The lazy list/map implementations are broken out from `ImmutableCollections` to a separate class.
>>
>> The old benchmarks are not moved/renamed to allow comparison with previous releases.
>>
>> `java.util.Optional` is updated so that its field is annotated with `@Stable`. This is to allow `Optional` instances to be held in lazy constants and still provide constant folding.
>
> src/java.base/share/classes/sun/nio/ch/Net.java line 99:
>
>> 97: }
>> 98:
>> 99: private static final LazyConstant<Boolean> SHUTDOWN_WRITE_BEFORE_CLOSE = LazyConstant.of(new Supplier<Boolean>() {
>
> I wonder if there is a reason for not using `BooleanSupplier`.
Unfortunately, BooleanSupplier does not extend Supplier.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/27605#discussion_r2403730001
More information about the i18n-dev
mailing list