public class sun.reflect.generics.reflectiveObjects.TypeVariableImpl<D extends java.lang.reflect.GenericDeclaration> extends sun.reflect.generics.reflectiveObjects.LazyReflectiveObjectGenerator implements java.lang.reflect.TypeVariable<D>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.reflect.generics.reflectiveObjects.TypeVariableImpl
super_class: sun.reflect.generics.reflectiveObjects.LazyReflectiveObjectGenerator
{
D genericDeclaration;
descriptor: Ljava/lang/reflect/GenericDeclaration;
flags: (0x0000)
Signature: TD;
private java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.reflect.Type[] bounds;
descriptor: [Ljava/lang/reflect/Type;
flags: (0x0002) ACC_PRIVATE
private sun.reflect.generics.tree.FieldTypeSignature[] boundASTs;
descriptor: [Lsun/reflect/generics/tree/FieldTypeSignature;
flags: (0x0002) ACC_PRIVATE
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic sun.reflect.generics.reflectiveObjects.TypeVariableImpl.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>(D, java.lang.String, sun.reflect.generics.tree.FieldTypeSignature[], sun.reflect.generics.factory.GenericsFactory);
descriptor: (Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;[Lsun/reflect/generics/tree/FieldTypeSignature;Lsun/reflect/generics/factory/GenericsFactory;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 4
invokespecial sun.reflect.generics.reflectiveObjects.LazyReflectiveObjectGenerator.<init>:(Lsun/reflect/generics/factory/GenericsFactory;)V
1: aload 0
aload 1
putfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.genericDeclaration:Ljava/lang/reflect/GenericDeclaration;
2: aload 0
aload 2
putfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.name:Ljava/lang/String;
3: aload 0
aload 3
putfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.boundASTs:[Lsun/reflect/generics/tree/FieldTypeSignature;
4: return
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/generics/reflectiveObjects/TypeVariableImpl<TD;>;
0 5 1 decl TD;
0 5 2 n Ljava/lang/String;
0 5 3 bs [Lsun/reflect/generics/tree/FieldTypeSignature;
0 5 4 f Lsun/reflect/generics/factory/GenericsFactory;
Signature: (TD;Ljava/lang/String;[Lsun/reflect/generics/tree/FieldTypeSignature;Lsun/reflect/generics/factory/GenericsFactory;)V
MethodParameters:
Name Flags
decl
n
bs
f
private sun.reflect.generics.tree.FieldTypeSignature[] getBoundASTs();
descriptor: ()[Lsun/reflect/generics/tree/FieldTypeSignature;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: getstatic sun.reflect.generics.reflectiveObjects.TypeVariableImpl.$assertionsDisabled:Z
ifne 1
aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.bounds:[Ljava/lang/reflect/Type;
ifnull 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.boundASTs:[Lsun/reflect/generics/tree/FieldTypeSignature;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl<TD;>;
public static <T extends java.lang.reflect.GenericDeclaration> sun.reflect.generics.reflectiveObjects.TypeVariableImpl<T> make(T, java.lang.String, sun.reflect.generics.tree.FieldTypeSignature[], sun.reflect.generics.factory.GenericsFactory);
descriptor: (Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;[Lsun/reflect/generics/tree/FieldTypeSignature;Lsun/reflect/generics/factory/GenericsFactory;)Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
instanceof java.lang.Class
ifne 6
1: aload 0
instanceof java.lang.reflect.Method
ifne 6
2: aload 0
instanceof java.lang.reflect.Constructor
ifne 6
3: new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "Unexpected kind of GenericDeclaration"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
4: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
6: StackMap locals:
StackMap stack:
new sun.reflect.generics.reflectiveObjects.TypeVariableImpl
dup
aload 0
aload 1
aload 2
aload 3
invokespecial sun.reflect.generics.reflectiveObjects.TypeVariableImpl.<init>:(Ljava/lang/reflect/GenericDeclaration;Ljava/lang/String;[Lsun/reflect/generics/tree/FieldTypeSignature;Lsun/reflect/generics/factory/GenericsFactory;)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 decl TT;
0 7 1 name Ljava/lang/String;
0 7 2 bs [Lsun/reflect/generics/tree/FieldTypeSignature;
0 7 3 f Lsun/reflect/generics/factory/GenericsFactory;
Signature: <T::Ljava/lang/reflect/GenericDeclaration;>(TT;Ljava/lang/String;[Lsun/reflect/generics/tree/FieldTypeSignature;Lsun/reflect/generics/factory/GenericsFactory;)Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl<TT;>;
MethodParameters:
Name Flags
decl
name
bs
f
public java.lang.reflect.Type[] getBounds();
descriptor: ()[Ljava/lang/reflect/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=1
start local 0 0: aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.bounds:[Ljava/lang/reflect/Type;
ifnonnull 11
1: aload 0
invokevirtual sun.reflect.generics.reflectiveObjects.TypeVariableImpl.getBoundASTs:()[Lsun/reflect/generics/tree/FieldTypeSignature;
astore 1
start local 1 2: aload 1
arraylength
anewarray java.lang.reflect.Type
astore 2
start local 2 3: iconst_0
istore 3
start local 3 4: goto 9
5: StackMap locals: sun.reflect.generics.tree.FieldTypeSignature[] java.lang.reflect.Type[] int
StackMap stack:
aload 0
invokevirtual sun.reflect.generics.reflectiveObjects.TypeVariableImpl.getReifier:()Lsun/reflect/generics/visitor/Reifier;
astore 4
start local 4 6: aload 1
iload 3
aaload
aload 4
invokeinterface sun.reflect.generics.tree.FieldTypeSignature.accept:(Lsun/reflect/generics/visitor/TypeTreeVisitor;)V
7: aload 2
iload 3
aload 4
invokevirtual sun.reflect.generics.visitor.Reifier.getResult:()Ljava/lang/reflect/Type;
aastore
end local 4 8: iinc 3 1
StackMap locals:
StackMap stack:
9: iload 3
aload 1
arraylength
if_icmplt 5
end local 3 10: aload 0
aload 2
putfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.bounds:[Ljava/lang/reflect/Type;
end local 2 end local 1 11: StackMap locals:
StackMap stack:
aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.bounds:[Ljava/lang/reflect/Type;
invokevirtual java.lang.reflect.Type[].clone:()Ljava/lang/Object;
checkcast java.lang.reflect.Type[]
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl<TD;>;
2 11 1 fts [Lsun/reflect/generics/tree/FieldTypeSignature;
3 11 2 ts [Ljava/lang/reflect/Type;
4 10 3 j I
6 8 4 r Lsun/reflect/generics/visitor/Reifier;
public D getGenericDeclaration();
descriptor: ()Ljava/lang/reflect/GenericDeclaration;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.genericDeclaration:Ljava/lang/reflect/GenericDeclaration;
instanceof java.lang.Class
ifeq 2
1: aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.genericDeclaration:Ljava/lang/reflect/GenericDeclaration;
checkcast java.lang.Class
invokestatic sun.reflect.misc.ReflectUtil.checkPackageAccess:(Ljava/lang/Class;)V
goto 6
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.genericDeclaration:Ljava/lang/reflect/GenericDeclaration;
instanceof java.lang.reflect.Method
ifne 4
3: aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.genericDeclaration:Ljava/lang/reflect/GenericDeclaration;
instanceof java.lang.reflect.Constructor
ifeq 5
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.genericDeclaration:Ljava/lang/reflect/GenericDeclaration;
checkcast java.lang.reflect.Member
invokestatic sun.reflect.misc.ReflectUtil.conservativeCheckMemberAccess:(Ljava/lang/reflect/Member;)V
goto 6
5: StackMap locals:
StackMap stack:
new java.lang.AssertionError
dup
ldc "Unexpected kind of GenericDeclaration"
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.genericDeclaration:Ljava/lang/reflect/GenericDeclaration;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl<TD;>;
Signature: ()TD;
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.name:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl<TD;>;
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual sun.reflect.generics.reflectiveObjects.TypeVariableImpl.getName:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl<TD;>;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.lang.reflect.TypeVariable
ifeq 13
1: aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
ldc Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl;
if_acmpne 13
2: aload 1
checkcast java.lang.reflect.TypeVariable
astore 2
start local 2 3: aload 2
invokeinterface java.lang.reflect.TypeVariable.getGenericDeclaration:()Ljava/lang/reflect/GenericDeclaration;
astore 3
start local 3 4: aload 2
invokeinterface java.lang.reflect.TypeVariable.getName:()Ljava/lang/String;
astore 4
start local 4 5: aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.genericDeclaration:Ljava/lang/reflect/GenericDeclaration;
ifnonnull 7
6: aload 3
ifnonnull 12
goto 8
7: StackMap locals: java.lang.reflect.TypeVariable java.lang.reflect.GenericDeclaration java.lang.String
StackMap stack:
aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.genericDeclaration:Ljava/lang/reflect/GenericDeclaration;
aload 3
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 12
8: StackMap locals:
StackMap stack:
aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.name:Ljava/lang/String;
ifnonnull 10
9: aload 4
ifnonnull 12
goto 11
10: StackMap locals:
StackMap stack:
aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.name:Ljava/lang/String;
aload 4
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
11: StackMap locals:
StackMap stack:
iconst_1
ireturn
StackMap locals:
StackMap stack:
12: iconst_0
ireturn
end local 4 end local 3 end local 2 13: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl<TD;>;
0 14 1 o Ljava/lang/Object;
3 13 2 that Ljava/lang/reflect/TypeVariable<*>;
4 13 3 thatDecl Ljava/lang/reflect/GenericDeclaration;
5 13 4 thatName Ljava/lang/String;
MethodParameters:
Name Flags
o
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.genericDeclaration:Ljava/lang/reflect/GenericDeclaration;
invokevirtual java.lang.Object.hashCode:()I
aload 0
getfield sun.reflect.generics.reflectiveObjects.TypeVariableImpl.name:Ljava/lang/String;
invokevirtual java.lang.String.hashCode:()I
ixor
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/generics/reflectiveObjects/TypeVariableImpl<TD;>;
}
Signature: <D::Ljava/lang/reflect/GenericDeclaration;>Lsun/reflect/generics/reflectiveObjects/LazyReflectiveObjectGenerator;Ljava/lang/reflect/TypeVariable<TD;>;
SourceFile: "TypeVariableImpl.java"