On Fri, 4 Apr 2025 13:36:19 GMT, Hannes Wallnöfer <hann...@openjdk.org> wrote:

> Please review an enhancement to treat classes and interfaces that are not 
> included and not unconditionally exported as hidden. This means they do not 
> show up in the generated documentation even if they are implemented or 
> extended by a documented type. 
> 
> This change makes the `@hidden` JavaDoc tag unnecessary in two internal base 
> classes that previously used it, `jdk.internal.vm.vector.VectorSupport` and 
> `jdk.internal.event.Event`. The generated documentation is unchanged.
> 
> The change also adds support for the `@hidden` JavaDoc tag in interfaces, 
> which was previously missing, and adds coverage to `TestHiddenTag.java`.

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/Signatures.java
 line 165:

> 163:                     for (TypeMirror type : interfaces) {
> 164:                         TypeElement tDoc = utils.asTypeElement(type);
> 165:                         if (!(utils.isPublic(tDoc) || 
> utils.isLinkable(tDoc)) || utils.isHidden(tDoc)) {

This `(!isPublicOrProtected && !isLinkable) || isHidden` trio appears a few 
times. The conditions are negated and wrapped in parentheses so it is easily 
confusing on the web; can we extract this check into a new utils method?

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

PR Review Comment: https://git.openjdk.org/jdk/pull/24446#discussion_r2029581822

Reply via email to