On Thu, 18 Sep 2025 22:34:52 GMT, Chen Liang <[email protected]> wrote:

>> Tagir F. Valeev has updated the pull request incrementally with one 
>> additional commit since the last revision:
>> 
>>   Add @implSpec
>
> src/java.base/share/classes/java/util/Comparator.java line 201:
> 
>> 199:      * @param   o1   an argument.
>> 200:      * @param   o2   another argument.
>> 201:      * @param   <U> the type of the arguments and the result.
> 
> Since we are utilizing the least upper bound here, we can probably describe 
> this as:
> 
> "captures the least upper bound of argument types for the result type"
> 
> Or should we leave an API note?

Most docs for type arguments aren't that specific. I checked a bunch in 
Collections, Collection, and Class, and they're pretty simple and not precise. 
For example, in Collection we have:

    <T> T[] toArray(T[] a)

    @param <T> the component type of the array to contain the collection

Additionally, I'm not sure that `U` is actually the LUB of the types of the 
arguments. `U`'s upper bound of `T` might require it to be something different.

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/25297#discussion_r2361554171

Reply via email to