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 ofAnnotationInfo
objects.- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
AnnotationInfoList.AnnotationInfoFilter
Filter anAnnotationInfoList
using a predicate mapping anAnnotationInfo
object to a boolean, producing anotherAnnotationInfoList
for 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()
boolean
containsName(String name)
AnnotationInfoList
directOnly()
returns the list of direct annotations, excluding meta-annotations.AnnotationInfoList
filter(AnnotationInfoList.AnnotationInfoFilter filter)
Find the subset of theAnnotationInfo
objects in this list for which the given filter predicate is true.T
get(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 theAnnotationInfo
objects in this list for which the given filter predicate is true.- Parameters:
filter
- TheAnnotationInfoList.AnnotationInfoFilter
to apply.- Returns:
- The subset of the
AnnotationInfo
objects 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 thisAnnotationInfoList
consists 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
getName
on 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.
-
-