On Thu, 4 Feb 2021 13:18:09 GMT, Hannes Wallnöfer <hann...@openjdk.org> wrote:

> This change improves support for the `@hidden` tag to suppress documentation 
> for specific elements, especially in the context of classes, interfaces and 
> inheritance/method overriding.
> 
> The important changes are in `Utils` and in `VisibleMemberTable`. (There is 
> also a number of non-related small code cleanup changes, sorry about that, I 
> know it makes review a bit harder but I couldn't resist.)
> 
> In `Utils` the most important change are:
> 
>  - Consider types as "undocumented enclosures" if they are marked with a 
> `@hidden` tag
>  - Check for `@hidden` tags even in non-included elements as they may be 
> included via undocumented enclosures
>  - To counter the above change, only run doclint on elements that are either 
> included or contained in an included type, as we don't want to report 
> warnings or errors for non-included code. 
>  
> In `VisibleMemberTable` there is a subtle change to not consider an 
> overriding method as a "simple override" if the overridden method is hidden 
> or otherwise invisible but in turn is a non-simple override of a method 
> further up the inheritance chain. This resulted in methods which should have 
> been documented as declared locally to be documented as declared in 
> supertypes. I also did a bit of renaming in `VisibleMemberTable` to make the 
> purpose of things a bit clearer.
> 
> Other than that, most of the changes consist of added calls to 
> `utils.hasHiddenTag(Element)`, usually with the purpose of not generating 
> links to things that are not there.

This pull request has now been integrated.

Changeset: 3210095a
Author:    Hannes Wallnöfer <hann...@openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/3210095a
Stats:     435 lines in 16 files changed: 303 ins; 32 del; 100 mod

8261079: Fix support for @hidden in classes and interfaces

Reviewed-by: jjg

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

PR: https://git.openjdk.java.net/jdk/pull/2406

Reply via email to