protected class TypePool.Default.TypeExtractor
extends org.objectweb.asm.ClassVisitor
| Modifier and Type | Class and Description |
|---|---|
protected class |
TypePool.Default.TypeExtractor.AnnotationExtractor
An annotation extractor reads an annotation found in a class field an collects data that
is relevant to creating a related annotation description.
|
protected class |
TypePool.Default.TypeExtractor.FieldExtractor
A field extractor reads a field within a class file and collects data that is relevant
to creating a related field description.
|
protected class |
TypePool.Default.TypeExtractor.MethodExtractor
A method extractor reads a method within a class file and collects data that is relevant
to creating a related method description.
|
| Modifier and Type | Field and Description |
|---|---|
private int |
actualModifiers
The actual modifiers found for this type.
|
private java.util.List<TypePool.Default.LazyTypeDescription.AnnotationToken> |
annotationTokens
A list of annotation tokens describing annotations that are found on the visited type.
|
private boolean |
anonymousType
true if this type was found to represent an anonymous type. |
private java.util.List<java.lang.String> |
declaredTypes
A list of descriptors representing the types that are declared by the parsed type.
|
private java.lang.String |
declaringTypeName
The binary name of this type's declaring type or
null if no such type exists. |
private java.util.List<TypePool.Default.LazyTypeDescription.FieldToken> |
fieldTokens
A list of field tokens describing fields that are found on the visited type.
|
private java.lang.String |
genericSignature
The generic signature of the type or
null if it is not generic. |
private java.lang.String[] |
interfaceName
A list of internal names of interfaces implemented by this type or
null if no interfaces
are implemented. |
private java.lang.String |
internalName
The internal name found for this type.
|
private java.util.List<TypePool.Default.LazyTypeDescription.MethodToken> |
methodTokens
A list of method tokens describing annotations that are found on the visited type.
|
private int |
modifiers
The modifiers found for this type.
|
private java.lang.String |
nestHost
The nest host that was found in the class file or
null if no nest host was specified. |
private java.util.List<java.lang.String> |
nestMembers
A list of nest members that were found in the class file.
|
private static int |
REAL_MODIFIER_MASK
A mask that cuts off pseudo flags beyond the second byte that are inserted by ASM.
|
private java.lang.String |
superClassName
The internal name of the super type found for this type or
null if no such type exists. |
private java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.util.List<TypePool.Default.LazyTypeDescription.AnnotationToken>>> |
superTypeAnnotationTokens
A mapping of the super types' type annotation tokens by their indices.
|
private TypePool.Default.LazyTypeDescription.TypeContainment |
typeContainment
The declaration context found for this type.
|
private java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.util.List<TypePool.Default.LazyTypeDescription.AnnotationToken>>> |
typeVariableAnnotationTokens
A mapping of the type variables' type annotation tokens by their indices.
|
private java.util.Map<java.lang.Integer,java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.util.List<TypePool.Default.LazyTypeDescription.AnnotationToken>>>> |
typeVariableBoundsAnnotationTokens
A mapping of the type variables' bounds' type annotation tokens by their indices and each variables index.
|
| Modifier | Constructor and Description |
|---|---|
protected |
TypeExtractor()
Creates a new type extractor.
|
| Modifier and Type | Method and Description |
|---|---|
protected TypeDescription |
toTypeDescription()
Creates a type description from all data that is currently collected.
|
void |
visit(int classFileVersion,
int modifiers,
java.lang.String internalName,
java.lang.String genericSignature,
java.lang.String superClassName,
java.lang.String[] interfaceName) |
org.objectweb.asm.AnnotationVisitor |
visitAnnotation(java.lang.String descriptor,
boolean visible) |
org.objectweb.asm.FieldVisitor |
visitField(int modifiers,
java.lang.String internalName,
java.lang.String descriptor,
java.lang.String genericSignature,
java.lang.Object defaultValue) |
void |
visitInnerClass(java.lang.String internalName,
java.lang.String outerName,
java.lang.String innerName,
int modifiers) |
org.objectweb.asm.MethodVisitor |
visitMethod(int modifiers,
java.lang.String internalName,
java.lang.String descriptor,
java.lang.String genericSignature,
java.lang.String[] exceptionName) |
void |
visitNestHost(java.lang.String nestHost) |
void |
visitNestMember(java.lang.String nestMember) |
void |
visitOuterClass(java.lang.String typeName,
java.lang.String methodName,
java.lang.String methodDescriptor) |
org.objectweb.asm.AnnotationVisitor |
visitTypeAnnotation(int rawTypeReference,
org.objectweb.asm.TypePath typePath,
java.lang.String descriptor,
boolean visible) |
private static final int REAL_MODIFIER_MASK
private final java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.util.List<TypePool.Default.LazyTypeDescription.AnnotationToken>>> superTypeAnnotationTokens
private final java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.util.List<TypePool.Default.LazyTypeDescription.AnnotationToken>>> typeVariableAnnotationTokens
private final java.util.Map<java.lang.Integer,java.util.Map<java.lang.Integer,java.util.Map<java.lang.String,java.util.List<TypePool.Default.LazyTypeDescription.AnnotationToken>>>> typeVariableBoundsAnnotationTokens
private final java.util.List<TypePool.Default.LazyTypeDescription.AnnotationToken> annotationTokens
private final java.util.List<TypePool.Default.LazyTypeDescription.FieldToken> fieldTokens
private final java.util.List<TypePool.Default.LazyTypeDescription.MethodToken> methodTokens
private int actualModifiers
private int modifiers
private java.lang.String internalName
private java.lang.String superClassName
null if no such type exists.private java.lang.String genericSignature
null if it is not generic.private java.lang.String[] interfaceName
null if no interfaces
are implemented.private boolean anonymousType
true if this type was found to represent an anonymous type.private java.lang.String nestHost
null if no nest host was specified.private final java.util.List<java.lang.String> nestMembers
private TypePool.Default.LazyTypeDescription.TypeContainment typeContainment
private java.lang.String declaringTypeName
null if no such type exists.private final java.util.List<java.lang.String> declaredTypes
public void visit(int classFileVersion,
int modifiers,
java.lang.String internalName,
java.lang.String genericSignature,
java.lang.String superClassName,
java.lang.String[] interfaceName)
visit in class org.objectweb.asm.ClassVisitorpublic void visitOuterClass(java.lang.String typeName,
java.lang.String methodName,
java.lang.String methodDescriptor)
visitOuterClass in class org.objectweb.asm.ClassVisitorpublic void visitInnerClass(java.lang.String internalName,
java.lang.String outerName,
java.lang.String innerName,
int modifiers)
visitInnerClass in class org.objectweb.asm.ClassVisitorpublic org.objectweb.asm.AnnotationVisitor visitTypeAnnotation(int rawTypeReference,
org.objectweb.asm.TypePath typePath,
java.lang.String descriptor,
boolean visible)
visitTypeAnnotation in class org.objectweb.asm.ClassVisitorpublic org.objectweb.asm.AnnotationVisitor visitAnnotation(java.lang.String descriptor,
boolean visible)
visitAnnotation in class org.objectweb.asm.ClassVisitorpublic org.objectweb.asm.FieldVisitor visitField(int modifiers,
java.lang.String internalName,
java.lang.String descriptor,
java.lang.String genericSignature,
java.lang.Object defaultValue)
visitField in class org.objectweb.asm.ClassVisitorpublic org.objectweb.asm.MethodVisitor visitMethod(int modifiers,
java.lang.String internalName,
java.lang.String descriptor,
java.lang.String genericSignature,
java.lang.String[] exceptionName)
visitMethod in class org.objectweb.asm.ClassVisitorpublic void visitNestHost(java.lang.String nestHost)
visitNestHost in class org.objectweb.asm.ClassVisitorpublic void visitNestMember(java.lang.String nestMember)
visitNestMember in class org.objectweb.asm.ClassVisitorprotected TypeDescription toTypeDescription()