public final class sun.reflect.annotation.TypeAnnotation$LocationInfo
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: sun.reflect.annotation.TypeAnnotation$LocationInfo
super_class: java.lang.Object
{
private final int depth;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final sun.reflect.annotation.TypeAnnotation$LocationInfo$Location[] locations;
descriptor: [Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public static final sun.reflect.annotation.TypeAnnotation$LocationInfo BASE_LOCATION;
descriptor: Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new sun.reflect.annotation.TypeAnnotation$LocationInfo
dup
invokespecial sun.reflect.annotation.TypeAnnotation$LocationInfo.<init>:()V
putstatic sun.reflect.annotation.TypeAnnotation$LocationInfo.BASE_LOCATION:Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
iconst_0
anewarray sun.reflect.annotation.TypeAnnotation$LocationInfo$Location
invokespecial sun.reflect.annotation.TypeAnnotation$LocationInfo.<init>:(I[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
private void <init>(int, sun.reflect.annotation.TypeAnnotation$LocationInfo$Location[]);
descriptor: (I[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iload 1
putfield sun.reflect.annotation.TypeAnnotation$LocationInfo.depth:I
2: aload 0
aload 2
putfield sun.reflect.annotation.TypeAnnotation$LocationInfo.locations:[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
0 4 1 depth I
0 4 2 locations [Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
MethodParameters:
Name Flags
depth
locations
public static sun.reflect.annotation.TypeAnnotation$LocationInfo parseLocationInfo(java.nio.ByteBuffer);
descriptor: (Ljava/nio/ByteBuffer;)Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=6, args_size=1
start local 0 0: aload 0
invokevirtual java.nio.ByteBuffer.get:()B
sipush 255
iand
istore 1
start local 1 1: iload 1
ifne 3
2: getstatic sun.reflect.annotation.TypeAnnotation$LocationInfo.BASE_LOCATION:Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
areturn
3: StackMap locals: int
StackMap stack:
iload 1
anewarray sun.reflect.annotation.TypeAnnotation$LocationInfo$Location
astore 2
start local 2 4: iconst_0
istore 3
start local 3 5: goto 18
6: StackMap locals: sun.reflect.annotation.TypeAnnotation$LocationInfo$Location[] int
StackMap stack:
aload 0
invokevirtual java.nio.ByteBuffer.get:()B
istore 4
start local 4 7: aload 0
invokevirtual java.nio.ByteBuffer.get:()B
sipush 255
iand
i2s
istore 5
start local 5 8: iload 4
ifeq 14
iload 4
iconst_1
if_icmpne 9
iconst_1
goto 10
StackMap locals: int int
StackMap stack:
9: iconst_0
StackMap locals:
StackMap stack: int
10: iload 4
iconst_2
if_icmpne 11
iconst_1
goto 12
StackMap locals:
StackMap stack: int
11: iconst_0
StackMap locals: java.nio.ByteBuffer int sun.reflect.annotation.TypeAnnotation$LocationInfo$Location[] int int int
StackMap stack: int int
12: ior
ifne 14
iload 4
iconst_3
if_icmpeq 14
13: new java.lang.annotation.AnnotationFormatError
dup
ldc "Bad Location encoding in Type Annotation"
invokespecial java.lang.annotation.AnnotationFormatError.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
iload 4
iconst_3
if_icmpeq 16
iload 5
ifeq 16
15: new java.lang.annotation.AnnotationFormatError
dup
ldc "Bad Location encoding in Type Annotation"
invokespecial java.lang.annotation.AnnotationFormatError.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals:
StackMap stack:
aload 2
iload 3
new sun.reflect.annotation.TypeAnnotation$LocationInfo$Location
dup
iload 4
iload 5
invokespecial sun.reflect.annotation.TypeAnnotation$LocationInfo$Location.<init>:(BS)V
aastore
end local 5 end local 4 17: iinc 3 1
StackMap locals:
StackMap stack:
18: iload 3
iload 1
if_icmplt 6
end local 3 19: new sun.reflect.annotation.TypeAnnotation$LocationInfo
dup
iload 1
aload 2
invokespecial sun.reflect.annotation.TypeAnnotation$LocationInfo.<init>:(I[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 buf Ljava/nio/ByteBuffer;
1 20 1 depth I
4 20 2 locations [Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
5 19 3 i I
7 17 4 tag B
8 17 5 index S
MethodParameters:
Name Flags
buf
public sun.reflect.annotation.TypeAnnotation$LocationInfo pushArray();
descriptor: ()Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
iconst_0
invokevirtual sun.reflect.annotation.TypeAnnotation$LocationInfo.pushLocation:(BS)Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
public sun.reflect.annotation.TypeAnnotation$LocationInfo pushInner();
descriptor: ()Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
iconst_0
invokevirtual sun.reflect.annotation.TypeAnnotation$LocationInfo.pushLocation:(BS)Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
public sun.reflect.annotation.TypeAnnotation$LocationInfo pushWildcard();
descriptor: ()Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
iconst_2
iconst_0
invokevirtual sun.reflect.annotation.TypeAnnotation$LocationInfo.pushLocation:(BS)Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
public sun.reflect.annotation.TypeAnnotation$LocationInfo pushTypeArg(short);
descriptor: (S)Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iconst_3
iload 1
invokevirtual sun.reflect.annotation.TypeAnnotation$LocationInfo.pushLocation:(BS)Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
0 1 1 index S
MethodParameters:
Name Flags
index
public sun.reflect.annotation.TypeAnnotation$LocationInfo pushLocation(byte, short);
descriptor: (BS)Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.depth:I
iconst_1
iadd
istore 3
start local 3 1: iload 3
anewarray sun.reflect.annotation.TypeAnnotation$LocationInfo$Location
astore 4
start local 4 2: aload 0
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.locations:[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
iconst_0
aload 4
iconst_0
aload 0
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.depth:I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
3: aload 4
iload 3
iconst_1
isub
new sun.reflect.annotation.TypeAnnotation$LocationInfo$Location
dup
iload 1
iload 2
sipush 255
iand
i2s
invokespecial sun.reflect.annotation.TypeAnnotation$LocationInfo$Location.<init>:(BS)V
aastore
4: new sun.reflect.annotation.TypeAnnotation$LocationInfo
dup
iload 3
aload 4
invokespecial sun.reflect.annotation.TypeAnnotation$LocationInfo.<init>:(I[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
0 5 1 tag B
0 5 2 index S
1 5 3 newDepth I
2 5 4 res [Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
MethodParameters:
Name Flags
tag
index
public sun.reflect.annotation.TypeAnnotation$LocationInfo popAllLocations(byte);
descriptor: (B)Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
astore 2
start local 2 1: aload 2
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.depth:I
istore 3
start local 3 2: goto 4
3: StackMap locals: sun.reflect.annotation.TypeAnnotation$LocationInfo int
StackMap stack:
iinc 3 -1
4: StackMap locals:
StackMap stack:
iload 3
ifle 5
aload 2
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.locations:[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
iload 3
iconst_1
isub
aaload
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo$Location.tag:B
iload 1
if_icmpeq 3
5: StackMap locals:
StackMap stack:
iload 3
aload 2
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.depth:I
if_icmpeq 9
6: iload 3
anewarray sun.reflect.annotation.TypeAnnotation$LocationInfo$Location
astore 4
start local 4 7: aload 0
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.locations:[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
iconst_0
aload 4
iconst_0
iload 3
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
8: new sun.reflect.annotation.TypeAnnotation$LocationInfo
dup
iload 3
aload 4
invokespecial sun.reflect.annotation.TypeAnnotation$LocationInfo.<init>:(I[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;)V
areturn
end local 4 9: StackMap locals:
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
0 10 1 tag B
1 10 2 l Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
2 10 3 newDepth I
7 9 4 res [Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
MethodParameters:
Name Flags
tag
public sun.reflect.annotation.TypeAnnotation[] filter(sun.reflect.annotation.TypeAnnotation[]);
descriptor: ([Lsun/reflect/annotation/TypeAnnotation;)[Lsun/reflect/annotation/TypeAnnotation;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
aload 1
arraylength
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
start local 2 1: aload 1
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 6
StackMap locals: sun.reflect.annotation.TypeAnnotation$LocationInfo sun.reflect.annotation.TypeAnnotation[] java.util.ArrayList top int int sun.reflect.annotation.TypeAnnotation[]
StackMap stack:
2: aload 6
iload 4
aaload
astore 3
start local 3 3: aload 0
aload 3
invokevirtual sun.reflect.annotation.TypeAnnotation.getLocationInfo:()Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
invokevirtual sun.reflect.annotation.TypeAnnotation$LocationInfo.isSameLocationInfo:(Lsun/reflect/annotation/TypeAnnotation$LocationInfo;)Z
ifeq 5
4: aload 2
aload 3
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 3 5: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
6: iload 4
iload 5
if_icmplt 2
7: aload 2
getstatic sun.reflect.annotation.AnnotatedTypeFactory.EMPTY_TYPE_ANNOTATION_ARRAY:[Lsun/reflect/annotation/TypeAnnotation;
invokevirtual java.util.ArrayList.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast sun.reflect.annotation.TypeAnnotation[]
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
0 8 1 ta [Lsun/reflect/annotation/TypeAnnotation;
1 8 2 l Ljava/util/ArrayList<Lsun/reflect/annotation/TypeAnnotation;>;
3 5 3 t Lsun/reflect/annotation/TypeAnnotation;
MethodParameters:
Name Flags
ta
boolean isSameLocationInfo(sun.reflect.annotation.TypeAnnotation$LocationInfo);
descriptor: (Lsun/reflect/annotation/TypeAnnotation$LocationInfo;)Z
flags: (0x0000)
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.depth:I
aload 1
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.depth:I
if_icmpeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 3: goto 7
4: StackMap locals: int
StackMap stack:
aload 0
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.locations:[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
iload 2
aaload
aload 1
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.locations:[Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;
iload 2
aaload
invokevirtual sun.reflect.annotation.TypeAnnotation$LocationInfo$Location.isSameLocation:(Lsun/reflect/annotation/TypeAnnotation$LocationInfo$Location;)Z
ifne 6
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
7: iload 2
aload 0
getfield sun.reflect.annotation.TypeAnnotation$LocationInfo.depth:I
if_icmplt 4
end local 2 8: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
0 9 1 other Lsun/reflect/annotation/TypeAnnotation$LocationInfo;
3 8 2 i I
MethodParameters:
Name Flags
other
}
SourceFile: "TypeAnnotation.java"
NestHost: sun.reflect.annotation.TypeAnnotation
InnerClasses:
public final LocationInfo = sun.reflect.annotation.TypeAnnotation$LocationInfo of sun.reflect.annotation.TypeAnnotation
public final Location = sun.reflect.annotation.TypeAnnotation$LocationInfo$Location of sun.reflect.annotation.TypeAnnotation$LocationInfo