RFR: JDK-8280402: Add new convenience forms to HtmlTree
Jonathan Gibbons
jjg at openjdk.java.net
Mon Jan 24 20:45:06 UTC 2022
On Mon, 24 Jan 2022 19:59:59 GMT, Jonathan Gibbons <jjg at openjdk.org> wrote:
>> src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/formats/html/markup/HtmlTree.java line 240:
>>
>>> 238: list.forEach(item -> add(mapper.apply(item)));
>>> 239: return this;
>>> 240: }
>>
>> We could move this implementation of `addAll` to the `Content` base class as it is except for changing the return type to `Content`. This would make the method available in other subclasses that override/support `add(Content)`, such as `ContentBuilder`. The only observable change would be that it wouldn't throw `UnsupportedOperationException` when called with an empty collection in non-addable classes. I think that's an acceptable behaviour for an internal API.
>
> Another observable change would be that the method could not be used in method chaining, because of the different return type. But having the method applicable at least in a limited form in ContentBuilder would be nice, but that suggests leaving a covariant override here.
Another reason to make a minor update ... the doc comment on the method in Content is incorrect ... the `@implSpec` is wrong.
I'll copy (not move) the implementation from `HtmlTree` to `Content`.
-------------
PR: https://git.openjdk.java.net/jdk/pull/7166
More information about the javadoc-dev
mailing list