Package io.github.classgraph
Class AnnotationInfoList
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractList<E>
-
- java.util.ArrayList<T>
-
- io.github.classgraph.AnnotationInfoList
-
- All Implemented Interfaces:
Serializable,Cloneable,Iterable<AnnotationInfo>,Collection<AnnotationInfo>,List<AnnotationInfo>,RandomAccess
public class AnnotationInfoList extends ArrayList<T>
A list ofAnnotationInfoobjects.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceAnnotationInfoList.AnnotationInfoFilterFilter anAnnotationInfoListusing a predicate mapping anAnnotationInfoobject to a boolean, producing anotherAnnotationInfoListfor all items in the list for which the predicate is true.
-
Field Summary
-
Fields inherited from class java.util.AbstractList
modCount
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Map<String,T>asMap()booleancontainsName(String name)AnnotationInfoListdirectOnly()returns the list of direct annotations, excluding meta-annotations.AnnotationInfoListfilter(AnnotationInfoList.AnnotationInfoFilter filter)Find the subset of theAnnotationInfoobjects in this list for which the given filter predicate is true.Tget(String name)List<String>getAsStrings()List<String>getNames()-
Methods inherited from class java.util.ArrayList
add, add, addAll, addAll, clear, clone, contains, ensureCapacity, equals, forEach, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, removeIf, removeRange, replaceAll, retainAll, set, size, sort, spliterator, subList, toArray, toArray, trimToSize
-
Methods inherited from class java.util.AbstractCollection
containsAll, toString
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface java.util.Collection
parallelStream, stream, toArray
-
Methods inherited from interface java.util.List
containsAll
-
-
-
-
Method Detail
-
filter
public AnnotationInfoList filter(AnnotationInfoList.AnnotationInfoFilter filter)
Find the subset of theAnnotationInfoobjects in this list for which the given filter predicate is true.- Parameters:
filter- TheAnnotationInfoList.AnnotationInfoFilterto apply.- Returns:
- The subset of the
AnnotationInfoobjects in this list for which the given filter predicate is true.
-
directOnly
public AnnotationInfoList directOnly()
returns the list of direct annotations, excluding meta-annotations. If thisAnnotationInfoListconsists of class annotations, i.e. if it was produced using `ClassInfo#getAnnotationInfo()`, then the returned list also excludes annotations inherited from a superclass or implemented interface that was meta-annotated with@Inherited.- Returns:
- The list of directly-related annotations.
-
asMap
public Map<String,T> asMap()
- Returns:
- An index for this list, as a map from the name of each list item (obtained by calling
getNameon the list item) to the list item.
-
containsName
public boolean containsName(String name)
- Parameters:
name- The name to search for.- Returns:
- true if this list contains an item with the given name.
-
get
public T get(String name)
- Parameters:
name- The name to search for.- Returns:
- The list item with the given name, or null if not found.
-
getNames
public List<String> getNames()
- Returns:
- The names of all packages in this list, by calling
PackageInfo.getName()for each item in the list.
-
-