Package io.github.classgraph
Class TypeArgument
java.lang.Object
io.github.classgraph.ScanResultObject
io.github.classgraph.HierarchicalTypeSignature
io.github.classgraph.TypeArgument
A type argument.
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ReferenceTypeSignature
Type signature (will be null if wildcard == ANY).private final TypeArgument.Wildcard
A wildcard type.Fields inherited from class io.github.classgraph.HierarchicalTypeSignature
typeAnnotationInfo
Fields inherited from class io.github.classgraph.ScanResultObject
classRef, scanResult
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
TypeArgument
(TypeArgument.Wildcard wildcard, ReferenceTypeSignature typeSignature) Constructor. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addTypeAnnotation
(List<Classfile.TypePathNode> typePath, AnnotationInfo annotationInfo) Add a type annotation.boolean
void
findReferencedClassNames
(Set<String> refdClassNames) Get the names of any classes referenced in the type signature.protected ClassInfo
Get theClassInfo
object for the referenced class, or null if the referenced class was not encountered during scanning (i.e.protected String
The name of the class (used byScanResultObject.getClassInfo()
to fetch theClassInfo
object for the class).Get the type signature associated with the wildcard (or null, if the wildcard is ANY).Get the type wildcard, which is one of {NONE, ANY, EXTENDS, SUPER}.int
hashCode()
private static TypeArgument
Parse a type argument.(package private) static List
<TypeArgument> Parse a list of type arguments.(package private) void
setScanResult
(ScanResult scanResult) Set ScanResult backreferences in info objects after scan has completed.protected void
toStringInternal
(boolean useSimpleNames, AnnotationInfoList annotationsToExclude, StringBuilder buf) Render type signature to string.Methods inherited from class io.github.classgraph.HierarchicalTypeSignature
addTypeAnnotation, getTypeAnnotationInfo, toString
Methods inherited from class io.github.classgraph.ScanResultObject
findReferencedClassInfo, findReferencedClassInfo, loadClass, loadClass, loadClass, loadClass, toString, toString, toStringWithSimpleNames
-
Field Details
-
wildcard
A wildcard type. -
typeSignature
Type signature (will be null if wildcard == ANY).
-
-
Constructor Details
-
TypeArgument
Constructor.- Parameters:
wildcard
- The wildcard typetypeSignature
- The type signature
-
-
Method Details
-
getWildcard
Get the type wildcard, which is one of {NONE, ANY, EXTENDS, SUPER}.- Returns:
- The type wildcard.
-
getTypeSignature
Get the type signature associated with the wildcard (or null, if the wildcard is ANY).- Returns:
- The type signature.
-
addTypeAnnotation
protected void addTypeAnnotation(List<Classfile.TypePathNode> typePath, AnnotationInfo annotationInfo) Description copied from class:HierarchicalTypeSignature
Add a type annotation.- Specified by:
addTypeAnnotation
in classHierarchicalTypeSignature
- Parameters:
typePath
- the type pathannotationInfo
- the annotation
-
parse
Parse a type argument.- Parameters:
parser
- The parser.definingClassName
- The name of the defining class (for resolving type variables).- Returns:
- The parsed method type signature.
- Throws:
ParseException
- If method type signature could not be parsed.
-
parseList
Parse a list of type arguments.- Parameters:
parser
- The parser.definingClassName
- The name of the defining class (for resolving type variables).- Returns:
- The list of type arguments.
- Throws:
ParseException
- If type signature could not be parsed.
-
getClassName
Description copied from class:ScanResultObject
The name of the class (used byScanResultObject.getClassInfo()
to fetch theClassInfo
object for the class).- Specified by:
getClassName
in classScanResultObject
- Returns:
- The class name.
-
getClassInfo
Description copied from class:ScanResultObject
Get theClassInfo
object for the referenced class, or null if the referenced class was not encountered during scanning (i.e. no ClassInfo object was created for the class during scanning). N.B. even if this method returns null,ScanResultObject.loadClass()
may be able to load the referenced class by name.- Overrides:
getClassInfo
in classScanResultObject
- Returns:
- The
ClassInfo
object for the referenced class.
-
setScanResult
Description copied from class:ScanResultObject
Set ScanResult backreferences in info objects after scan has completed.- Overrides:
setScanResult
in classHierarchicalTypeSignature
- Parameters:
scanResult
- the scan result
-
findReferencedClassNames
Get the names of any classes referenced in the type signature.- Parameters:
refdClassNames
- the referenced class names.
-
hashCode
public int hashCode() -
equals
-
toStringInternal
protected void toStringInternal(boolean useSimpleNames, AnnotationInfoList annotationsToExclude, StringBuilder buf) Description copied from class:HierarchicalTypeSignature
Render type signature to string.- Specified by:
toStringInternal
in classHierarchicalTypeSignature
- Parameters:
useSimpleNames
- whether to use simple names for classes.annotationsToExclude
- toplevel annotations to exclude, to eliminate duplication (toplevel annotations are both class/field/method annotations and type annotations).buf
- theStringBuilder
to write to.
-