On Wed, 23 Apr 2025 12:12:26 GMT, Per Minborg <pminb...@openjdk.org> wrote:
>> Implement JEP 502. >> >> The PR passes tier1-tier3 tests. > > Per Minborg has updated the pull request incrementally with one additional > commit since the last revision: > > Replace 'contents' with 'result' in the docs src/java.base/share/classes/java/lang/StableValue.java line 433: > 431: * provide transitive constantness. > 432: * > 433: * @implNote Stable values, functions, and collections are not {@link > Serializable}. Suggestion: * <p> * Stable values, functions, and collections are not {@link Serializable}. src/java.base/share/classes/java/util/Collection.java line 61: > 59: * implementations in the Java platform libraries comply. > 60: * > 61: * <p><a id="optional-operations"></a>Certain methods are specified to be Suggestion: * <p id="optional-operations">Certain methods are specified to be src/java.base/share/classes/java/util/ImmutableCollections.java line 1616: > 1614: } > 1615: > 1616: final class StableMapValues extends AbstractCollection<V> { Can this be `AbstractImmutableCollection`? I know we have #18522 debate going on, but we can probably safely port the semantics introduced in that PR to new collections we add in this patch. src/java.base/share/classes/java/util/ReverseOrderListView.java line 305: > 303: final StableValueImpl<E>[] reversed = ArraysSupport.reverse( > 304: Arrays.copyOf(stableList.delegates, > stableList.delegates.length)); > 305: return StableUtil.renderElements(base, "Collection", > reversed); StableList should provide its own SubList class that provide this implementation, instead of hacking the general-purpose view. src/java.base/share/classes/jdk/internal/javac/PreviewFeature.java line 85: > 83: LANGUAGE_MODEL, > 84: @JEP(number = 502, title = "Stable Values", status = "Preview") > 85: STABLE_VALUES, Please add your enum constant above `LANGUAGE_MODEL` - it is a reserved key for certain reflective preview APIs. ------------- PR Review Comment: https://git.openjdk.org/jdk/pull/23972#discussion_r2057076154 PR Review Comment: https://git.openjdk.org/jdk/pull/23972#discussion_r2057074429 PR Review Comment: https://git.openjdk.org/jdk/pull/23972#discussion_r2057073986 PR Review Comment: https://git.openjdk.org/jdk/pull/23972#discussion_r2057071480 PR Review Comment: https://git.openjdk.org/jdk/pull/23972#discussion_r2057069964