< prev index next >

src/jdk.javadoc/share/classes/jdk/javadoc/internal/doclets/toolkit/util/VisibleMemberTable.java

Print this page




 683                         break;
 684                     case CONSTRUCTOR:
 685                             addMember(e, Kind.CONSTRUCTORS);
 686                         break;
 687                     case ENUM_CONSTANT:
 688                         addMember(e, Kind.ENUM_CONSTANTS);
 689                         break;
 690                 }
 691             }
 692 
 693             // Freeze the data structures
 694             for (Kind kind : Kind.values()) {
 695                 orderedMembers.computeIfPresent(kind, (k, v) -> Collections.unmodifiableList(v));
 696                 orderedMembers.computeIfAbsent(kind, t -> Collections.emptyList());
 697 
 698                 memberMap.computeIfPresent(kind, (k, v) -> Collections.unmodifiableMap(v));
 699                 memberMap.computeIfAbsent(kind, t -> Collections.emptyMap());
 700             }
 701         }
 702 
 703         @SuppressWarnings("removal")
 704         String getMemberKey(Element e) {
 705             return new SimpleElementVisitor14<String, Void>() {
 706                 @Override
 707                 public String visitExecutable(ExecutableElement e, Void aVoid) {
 708                     return e.getSimpleName() + ":" + e.getParameters().size();
 709                 }
 710 
 711                 @Override
 712                 protected String defaultAction(Element e, Void aVoid) {
 713                     return e.getSimpleName().toString();
 714                 }
 715             }.visit(e);
 716         }
 717 
 718         void addMember(Element e, Kind kind) {
 719             List<Element> list = orderedMembers.computeIfAbsent(kind, k -> new ArrayList<>());
 720             list.add(e);
 721 
 722             Map<String, List<Element>> map = memberMap.computeIfAbsent(kind, k -> new HashMap<>());
 723             list = map.computeIfAbsent(getMemberKey(e), l -> new ArrayList<>());




 683                         break;
 684                     case CONSTRUCTOR:
 685                             addMember(e, Kind.CONSTRUCTORS);
 686                         break;
 687                     case ENUM_CONSTANT:
 688                         addMember(e, Kind.ENUM_CONSTANTS);
 689                         break;
 690                 }
 691             }
 692 
 693             // Freeze the data structures
 694             for (Kind kind : Kind.values()) {
 695                 orderedMembers.computeIfPresent(kind, (k, v) -> Collections.unmodifiableList(v));
 696                 orderedMembers.computeIfAbsent(kind, t -> Collections.emptyList());
 697 
 698                 memberMap.computeIfPresent(kind, (k, v) -> Collections.unmodifiableMap(v));
 699                 memberMap.computeIfAbsent(kind, t -> Collections.emptyMap());
 700             }
 701         }
 702 
 703         @SuppressWarnings("preview")
 704         String getMemberKey(Element e) {
 705             return new SimpleElementVisitor14<String, Void>() {
 706                 @Override
 707                 public String visitExecutable(ExecutableElement e, Void aVoid) {
 708                     return e.getSimpleName() + ":" + e.getParameters().size();
 709                 }
 710 
 711                 @Override
 712                 protected String defaultAction(Element e, Void aVoid) {
 713                     return e.getSimpleName().toString();
 714                 }
 715             }.visit(e);
 716         }
 717 
 718         void addMember(Element e, Kind kind) {
 719             List<Element> list = orderedMembers.computeIfAbsent(kind, k -> new ArrayList<>());
 720             list.add(e);
 721 
 722             Map<String, List<Element>> map = memberMap.computeIfAbsent(kind, k -> new HashMap<>());
 723             list = map.computeIfAbsent(getMemberKey(e), l -> new ArrayList<>());


< prev index next >