RFR: 8335122: Reorganize internal low-level support for HTML in jdk.javadoc [v2]
Andrey Turbanov
aturbanov at openjdk.org
Tue Jul 9 20:03:15 UTC 2024
On Mon, 8 Jul 2024 19:18:21 GMT, Jonathan Gibbons <jjg at openjdk.org> wrote:
>> Please review a change to reorganize the internal low-level support for HTML in the jdk.javadoc module.
>>
>> Hitherto, there are two separate sets of classes for low-level support for HTML in the `jdk.javadoc` module: one, in doclint, focused on reading and checking classes, the other, in the standard doclet, focused on generating HTML. This PR merges those two sets, into a new package `jdk.javadoc.internal.html` that is now used by both `doclint` and the standard doclet.
>>
>> There was a naming "anti-clash" -- `HtmlTag` in `doclint` vs `TagName` in the standard doclet. The resolution is to use `HtmlTag`, since the merged class is more than just the tag name.
>>
>> A few minor bugs were found and fixed. Other minor cleanup was done, but otherwise, there should be no big surprises here. But, one small item of note: `enum HtmlStyle` was split into `interface HtmlStyle` and `enum HtmlStyles implements HtmlStyle` to avoid having a doclet-specific enum class in the new `internal.html` package. The naming follows `HtmlId` and `HtmlIds`.
>>
>> There is no attempt at this time to simplify `HtmlTag` and `HtmlAttr` to remove support for older versions of HTML.
>
> Jonathan Gibbons has updated the pull request incrementally with one additional commit since the last revision:
>
> reorder imports
src/jdk.javadoc/share/classes/jdk/javadoc/internal/html/HtmlTag.java line 435:
> 433: // This class exists to avoid warnings from using parameterized vararg type
> 434: // Map<Attr,AttrKind> in signature of HtmlTag constructor.
> 435: private static class AttrMap extends EnumMap<HtmlAttr,AttrKind> {
Suggestion:
private static class AttrMap extends EnumMap<HtmlAttr,AttrKind> {
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/19916#discussion_r1671159565
More information about the javadoc-dev
mailing list