Not a review. Just a comment: New test code PrivateGenericParent.java
misses copyright.
-Sundar
On 16/01/20 12:16 am, Hannes Wallnöfer wrote:
Please review:
JBS: https://bugs.openjdk.java.net/browse/JDK-8224052
Webrev: http://cr.openjdk.java.net/~hannesw/8224052/webrev.00/
This is based on Maurizio’s patch, which fixes signatures of instantiated
generic methods in javadoc pages.
What was missing was support for the @throws taglet, which happens to be the
only javadoc taglet that actually displays type names. Unfortunately fixing
@throws was rather involved. I first had to add getCurrentPageElement() methods
in TagletWriter and HtmlDocletWriter to let taglets retrieve the current type
element as suggested by Jon on the JBS issue. We then set up a map of type
variables to their type substitutes. This seemed like the simplest way to go
since there is no fixed correlation between the list of thrown types and
@throws tags; tags may be missing, in no particular order etc.
There was another problem in ThrowsTaglet where
Utils.getFullyQualifiedName(Element) was used to keep track of already
documented thrown types in ThrowsTaglet. However, this replaces type-variables
with the name of the enclosing type, so thrown type vars were not tracked
correctly and could be documented multiple times. This is fixed by using
Utils.getFullyQualifiedName(Element, boolean) instead and passing false as
second argument.
Finally, as hinted by Jon on JBS, there was a bug where methods inherited from
private intermediate classes where not documented. This is also fixed by
accepting private types in Utils.isUndocumentedEnclosure(TypeElement).
Another problem I found with methods inherited this way is that they are not
included in the search index. I’ll file a new JBS issue for this.
Hannes