langtools/src/share/classes/javax/lang/model/util/ElementFilter.java
changeset 22163 3651128c74eb
parent 14801 d66cab4ef397
equal deleted inserted replaced
22162:3b3e23e67329 22163:3651128c74eb
   185 
   185 
   186     // Assumes targetKinds and E are sensible.
   186     // Assumes targetKinds and E are sensible.
   187     private static <E extends Element> List<E> listFilter(Iterable<? extends Element> elements,
   187     private static <E extends Element> List<E> listFilter(Iterable<? extends Element> elements,
   188                                                           Set<ElementKind> targetKinds,
   188                                                           Set<ElementKind> targetKinds,
   189                                                           Class<E> clazz) {
   189                                                           Class<E> clazz) {
   190         List<E> list = new ArrayList<E>();
   190         List<E> list = new ArrayList<>();
   191         for (Element e : elements) {
   191         for (Element e : elements) {
   192             if (targetKinds.contains(e.getKind()))
   192             if (targetKinds.contains(e.getKind()))
   193                 list.add(clazz.cast(e));
   193                 list.add(clazz.cast(e));
   194         }
   194         }
   195         return list;
   195         return list;
   198     // Assumes targetKinds and E are sensible.
   198     // Assumes targetKinds and E are sensible.
   199     private static <E extends Element> Set<E> setFilter(Set<? extends Element> elements,
   199     private static <E extends Element> Set<E> setFilter(Set<? extends Element> elements,
   200                                                         Set<ElementKind> targetKinds,
   200                                                         Set<ElementKind> targetKinds,
   201                                                         Class<E> clazz) {
   201                                                         Class<E> clazz) {
   202         // Return set preserving iteration order of input set.
   202         // Return set preserving iteration order of input set.
   203         Set<E> set = new LinkedHashSet<E>();
   203         Set<E> set = new LinkedHashSet<>();
   204         for (Element e : elements) {
   204         for (Element e : elements) {
   205             if (targetKinds.contains(e.getKind()))
   205             if (targetKinds.contains(e.getKind()))
   206                 set.add(clazz.cast(e));
   206                 set.add(clazz.cast(e));
   207         }
   207         }
   208         return set;
   208         return set;