On Tue, 30 Jan 2024 04:16:54 GMT, Chen Liang <[email protected]> wrote:
>> Currently in the javadoc tool, the generated class use page does not track
>> the occurrences of a class in the type arguments of the extends or
>> implements list, where they can appear. (See more details on the JBS issue)
>> For example:
>>
>> public class One {}
>>
>>
>> import java.util.*;
>> public class Two extends ArrayList<One> implements Comparator<One> {
>> }
>>
>>
>> This patch proposes to add new 2 usage categories, "Classes that extend
>> types with arguments of type" and "Classes that implement types with
>> arguments of type" to describe the missing usage scenarios.
>>
>> A preview of the new use page with the 2 new categories, generated based on
>> the example above, can be found here:
>> https://cr.openjdk.org/~liach/8323698-javadocuse/doc/class-use/One.html
>
> Chen Liang has updated the pull request with a new target base due to a merge
> or a rebase. The incremental webrev excludes the unrelated changes brought in
> by the merge/rebase. The pull request contains six additional commits since
> the last revision:
>
> - Review changes
> - Merge branch 'master' of https://github.com/openjdk/jdk into
> feature/jd-use-super-typearg
> - Fix tests
> - Improve localization
> - Merge branch 'master' of https://github.com/openjdk/jdk into
> feature/jd-use-super-typearg
> - Use page to check extends/implements type arguments
It does not feel generic enough. (No pun intended.) What about using a class or
interface as a bound as in this example?
interface MyList<T extends One & Two<Three>> extends java.util.List<T>
-------------
PR Review: https://git.openjdk.org/jdk/pull/17414#pullrequestreview-1891583957