class sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl implements java.lang.reflect.AnnotatedType
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl
super_class: java.lang.Object
{
private final java.lang.reflect.Type type;
descriptor: Ljava/lang/reflect/Type;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.reflect.AnnotatedElement decl;
descriptor: Ljava/lang/reflect/AnnotatedElement;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final sun.reflect.annotation.TypeAnnotation$LocationInfo location;
descriptor: Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final sun.reflect.annotation.TypeAnnotation[] allOnSameTargetTypeAnnotations;
descriptor: [Lsun/reflect/annotation/TypeAnnotation;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<java.lang.Class<? extends java.lang.annotation.Annotation>, java.lang.annotation.Annotation> annotations;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Class<+Ljava/lang/annotation/Annotation;>;Ljava/lang/annotation/Annotation;>;
void <init>(java.lang.reflect.Type, sun.reflect.annotation.TypeAnnotation$LocationInfo, sun.reflect.annotation.TypeAnnotation[], sun.reflect.annotation.TypeAnnotation[], java.lang.reflect.AnnotatedElement);
descriptor: (Ljava/lang/reflect/Type;Lsun/reflect/annotation/TypeAnnotation$LocationInfo;[Lsun/reflect/annotation/TypeAnnotation;[Lsun/reflect/annotation/TypeAnnotation;Ljava/lang/reflect/AnnotatedElement;)V
flags: (0x0000)
Code:
stack=3, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.type:Ljava/lang/reflect/Type;
2: aload 0
aload 5
putfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.decl:Ljava/lang/reflect/AnnotatedElement;
3: aload 0
aload 2
putfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.location:Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
4: aload 0
aload 4
putfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.allOnSameTargetTypeAnnotations:[Lsun/reflect/annotation/TypeAnnotation;
5: aload 0
aload 2
aload 3
invokevirtual sun.reflect.annotation.TypeAnnotation$LocationInfo.filter:([Lsun/reflect/annotation/TypeAnnotation;)[Lsun/reflect/annotation/TypeAnnotation;
invokestatic sun.reflect.annotation.TypeAnnotationParser.mapTypeAnnotations:([Lsun/reflect/annotation/TypeAnnotation;)Ljava/util/Map;
putfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.annotations:Ljava/util/Map;
6: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
0 7 1 type Ljava/lang/reflect/Type;
0 7 2 location Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
0 7 3 actualTypeAnnotations [Lsun/reflect/annotation/TypeAnnotation;
0 7 4 allOnSameTargetTypeAnnotations [Lsun/reflect/annotation/TypeAnnotation;
0 7 5 decl Ljava/lang/reflect/AnnotatedElement;
MethodParameters:
Name Flags
type
location
actualTypeAnnotations
allOnSameTargetTypeAnnotations
decl
public final java.lang.annotation.Annotation[] getAnnotations();
descriptor: ()[Ljava/lang/annotation/Annotation;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.getDeclaredAnnotations:()[Ljava/lang/annotation/Annotation;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
public final <T extends java.lang.annotation.Annotation> T getAnnotation(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.getDeclaredAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
0 1 1 annotation Ljava/lang/Class<TT;>;
Signature: <T::Ljava/lang/annotation/Annotation;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
annotation
public final <T extends java.lang.annotation.Annotation> T[] getAnnotationsByType(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)[Ljava/lang/annotation/Annotation;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.getDeclaredAnnotationsByType:(Ljava/lang/Class;)[Ljava/lang/annotation/Annotation;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
0 1 1 annotation Ljava/lang/Class<TT;>;
Signature: <T::Ljava/lang/annotation/Annotation;>(Ljava/lang/Class<TT;>;)[TT;
MethodParameters:
Name Flags
annotation
public final java.lang.annotation.Annotation[] getDeclaredAnnotations();
descriptor: ()[Ljava/lang/annotation/Annotation;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.annotations:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
iconst_0
anewarray java.lang.annotation.Annotation
invokeinterface java.util.Collection.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.annotation.Annotation[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
public final <T extends java.lang.annotation.Annotation> T getDeclaredAnnotation(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.annotations:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.annotation.Annotation
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
0 1 1 annotation Ljava/lang/Class<TT;>;
Signature: <T::Ljava/lang/annotation/Annotation;>(Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
annotation
public final <T extends java.lang.annotation.Annotation> T[] getDeclaredAnnotationsByType(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)[Ljava/lang/annotation/Annotation;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.annotations:Ljava/util/Map;
aload 1
invokestatic sun.reflect.annotation.AnnotationSupport.getDirectlyAndIndirectlyPresent:(Ljava/util/Map;Ljava/lang/Class;)[Ljava/lang/annotation/Annotation;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
0 1 1 annotation Ljava/lang/Class<TT;>;
Signature: <T::Ljava/lang/annotation/Annotation;>(Ljava/lang/Class<TT;>;)[TT;
MethodParameters:
Name Flags
annotation
public final java.lang.reflect.Type getType();
descriptor: ()Ljava/lang/reflect/Type;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.type:Ljava/lang/reflect/Type;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
public java.lang.reflect.AnnotatedType getAnnotatedOwnerType();
descriptor: ()Ljava/lang/reflect/AnnotatedType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=1
start local 0 0: aload 0
getfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.type:Ljava/lang/reflect/Type;
instanceof java.lang.Class
ifne 2
1: new java.lang.IllegalStateException
dup
ldc "Can't compute owner"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.type:Ljava/lang/reflect/Type;
checkcast java.lang.Class
astore 1
start local 1 3: aload 1
invokevirtual java.lang.Class.getDeclaringClass:()Ljava/lang/Class;
astore 2
start local 2 4: aload 2
ifnonnull 6
5: aconst_null
areturn
6: StackMap locals: java.lang.Class java.lang.Class
StackMap stack:
aload 1
invokevirtual java.lang.Class.isPrimitive:()Z
ifne 7
aload 1
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
if_acmpne 8
7: StackMap locals:
StackMap stack:
aconst_null
areturn
8: StackMap locals:
StackMap stack:
aload 2
aload 0
invokevirtual sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.getLocation:()Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
iconst_1
invokevirtual sun.reflect.annotation.TypeAnnotation$LocationInfo.popAllLocations:(B)Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
invokestatic sun.reflect.annotation.AnnotatedTypeFactory.nestingForType:(Ljava/lang/reflect/Type;Lsun/reflect/annotation/TypeAnnotation$LocationInfo;)Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
astore 3
start local 3 9: aload 0
invokevirtual sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.getTypeAnnotations:()[Lsun/reflect/annotation/TypeAnnotation;
astore 4
start local 4 10: new java.util.ArrayList
dup
aload 4
arraylength
invokespecial java.util.ArrayList.<init>:(I)V
astore 5
start local 5 11: aload 4
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 16
StackMap locals: sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl java.lang.Class java.lang.Class sun.reflect.annotation.TypeAnnotation$LocationInfo sun.reflect.annotation.TypeAnnotation[] java.util.List top int int sun.reflect.annotation.TypeAnnotation[]
StackMap stack:
12: aload 9
iload 7
aaload
astore 6
start local 6 13: aload 6
invokevirtual sun.reflect.annotation.TypeAnnotation.getLocationInfo:()Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
aload 3
invokevirtual sun.reflect.annotation.TypeAnnotation$LocationInfo.isSameLocationInfo:(Lsun/reflect/annotation/TypeAnnotation$LocationInfo;)Z
ifeq 15
14: aload 5
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 6 15: StackMap locals:
StackMap stack:
iinc 7 1
StackMap locals:
StackMap stack:
16: iload 7
iload 8
if_icmplt 12
17: aload 2
aload 3
aload 5
getstatic sun.reflect.annotation.AnnotatedTypeFactory.EMPTY_TYPE_ANNOTATION_ARRAY:[Lsun/reflect/annotation/TypeAnnotation;
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast sun.reflect.annotation.TypeAnnotation[]
aload 4
aload 0
invokevirtual sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.getDecl:()Ljava/lang/reflect/AnnotatedElement;
invokestatic sun.reflect.annotation.AnnotatedTypeFactory.buildAnnotatedType:(Ljava/lang/reflect/Type;Lsun/reflect/annotation/TypeAnnotation$LocationInfo;[Lsun/reflect/annotation/TypeAnnotation;[Lsun/reflect/annotation/TypeAnnotation;Ljava/lang/reflect/AnnotatedElement;)Ljava/lang/reflect/AnnotatedType;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
3 18 1 inner Ljava/lang/Class<*>;
4 18 2 owner Ljava/lang/Class<*>;
9 18 3 outerLoc Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
10 18 4 all [Lsun/reflect/annotation/TypeAnnotation;
11 18 5 l Ljava/util/List<Lsun/reflect/annotation/TypeAnnotation;>;
13 15 6 t Lsun/reflect/annotation/TypeAnnotation;
final sun.reflect.annotation.TypeAnnotation$LocationInfo getLocation();
descriptor: ()Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
flags: (0x0010) ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.location:Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
final sun.reflect.annotation.TypeAnnotation[] getTypeAnnotations();
descriptor: ()[Lsun/reflect/annotation/TypeAnnotation;
flags: (0x0010) ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.allOnSameTargetTypeAnnotations:[Lsun/reflect/annotation/TypeAnnotation;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
final java.lang.reflect.AnnotatedElement getDecl();
descriptor: ()Ljava/lang/reflect/AnnotatedElement;
flags: (0x0010) ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl.decl:Ljava/lang/reflect/AnnotatedElement;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/AnnotatedTypeFactory$AnnotatedTypeBaseImpl;
}
SourceFile: "AnnotatedTypeFactory.java"
NestHost: sun.reflect.annotation.AnnotatedTypeFactory
InnerClasses:
private AnnotatedTypeBaseImpl = sun.reflect.annotation.AnnotatedTypeFactory$AnnotatedTypeBaseImpl of sun.reflect.annotation.AnnotatedTypeFactory
public final LocationInfo = sun.reflect.annotation.TypeAnnotation$LocationInfo of sun.reflect.annotation.TypeAnnotation