On Wed, 15 Mar 2023 18:46:17 GMT, Pavel Rappo <pra...@openjdk.org> wrote:
>> src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/VisibleMemberTable.java >> line 888: >> >>> 886: for (Kind kind : Kind.values()) { >>> 887: orderedMembers.compute(kind, (k, v) -> v == null ? >>> List.of() : Collections.unmodifiableList(v)); >>> 888: namedMembers.compute(kind, (k, v) -> v == null ? >>> Map.of() : Collections.unmodifiableMap(v)); >> >> Can just use `replaceAll` than using a for loop > > There's a cost of changing that to this: > > // protect from unintended change > orderedMembers.replaceAll((k, l) -> Collections.unmodifiableList(l)); > namedMembers.replaceAll((k, m) -> Collections.unmodifiableMap(m)); > > That cost is using default values for absent kinds: > > List<Element> getOrderedMembers(Kind kind) { > return orderedMembers.getOrDefault(kind, List.of()); > } > > List<Element> getMembers(Name simpleName, Kind kind) { > return namedMembers.getOrDefault(kind, Map.of()) > .getOrDefault(simpleName, List.of()); > } > > Or did you mean something else? I don't mind either way; @jonathan-gibbons do you have a preference? ------------- PR: https://git.openjdk.org/jdk/pull/13044