RFR: [15] JDK-8235947: Cleanup/simplify Utils.getBlockTags
Jonathan Gibbons
jonathan.gibbons at oracle.com
Sat Dec 14 02:17:08 UTC 2019
Please review a moderately simple cleanup to the implementation(s) of
Utils.getBlockTags.
The existing code is unnecessarily string-oriented, and can be improved
by better leveraging DocTree.Kind, especially by updating each subtype
of BaseTaglet to know its associated DocTree.Kind.
The core of the fix is Utils, with additional support in BaseTaglet and
SimpleTaglet. The other changes are derivative changes using the new API.
There are more changes possible in this (general) area. For example,
there are similar methods such as Utils.hasBlockTag, and methods like
CommentHelper.getTagName. At a minimum, it may be reasonable to
co-locate all these methods in a new "Tags" utility class, but it is
also worth investigating what additional simplifications can be made.
But for now, this is a good checkpoint.
The old code accidentally covered up a pre-existing bug, which was
exposed in the replacement code. The old code did not return @uses and
@provides from getBlockTags, and so they did not not to be skipped as
part of the main comment in ModuleWriterImpl. Now they are returned by
getBlockTags, and so need to be skipped in TagletWriter.
This is all cleanup with no changes in the generated output. There are
no new tests and no changes needed to any existing tests. A full
comparison against a reference JDK was done with the standard JDK docs
(make docs) and with all the output from all the jtreg javadoc tests.
-- Jon
JBS: https://bugs.openjdk.java.net/browse/JDK-8235947
Webrev: http://cr.openjdk.java.net/~jjg/8235947/webrev.00/
More information about the javadoc-dev
mailing list