public abstract class sun.reflect.generics.scope.AbstractScope<D extends java.lang.reflect.GenericDeclaration> implements sun.reflect.generics.scope.Scope
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: sun.reflect.generics.scope.AbstractScope
super_class: java.lang.Object
{
private final D recvr;
descriptor: Ljava/lang/reflect/GenericDeclaration;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: TD;
private volatile sun.reflect.generics.scope.Scope enclosingScope;
descriptor: Lsun/reflect/generics/scope/Scope;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
protected void <init>();
descriptor: (Ljava/lang/reflect/GenericDeclaration;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
aload 0
aload 1
putfield sun.reflect.generics.scope.AbstractScope.recvr:Ljava/lang/reflect/GenericDeclaration;
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/generics/scope/AbstractScope<TD;>;
0 1 1 decl TD;
Signature: (TD;)V
MethodParameters:
Name Flags
decl
protected D getRecvr();
descriptor: ()Ljava/lang/reflect/GenericDeclaration;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.reflect.generics.scope.AbstractScope.recvr:Ljava/lang/reflect/GenericDeclaration;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/reflect/generics/scope/AbstractScope<TD;>;
Signature: ()TD;
protected abstract sun.reflect.generics.scope.Scope computeEnclosingScope();
descriptor: ()Lsun/reflect/generics/scope/Scope;
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
protected sun.reflect.generics.scope.Scope getEnclosingScope();
descriptor: ()Lsun/reflect/generics/scope/Scope;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.reflect.generics.scope.AbstractScope.enclosingScope:Lsun/reflect/generics/scope/Scope;
astore 1
start local 1 1: aload 1
ifnonnull 4
2: aload 0
invokevirtual sun.reflect.generics.scope.AbstractScope.computeEnclosingScope:()Lsun/reflect/generics/scope/Scope;
astore 1
3: aload 0
aload 1
putfield sun.reflect.generics.scope.AbstractScope.enclosingScope:Lsun/reflect/generics/scope/Scope;
4: StackMap locals: sun.reflect.generics.scope.Scope
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/reflect/generics/scope/AbstractScope<TD;>;
1 5 1 value Lsun/reflect/generics/scope/Scope;
public java.lang.reflect.TypeVariable<?> lookup(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/reflect/TypeVariable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual sun.reflect.generics.scope.AbstractScope.getRecvr:()Ljava/lang/reflect/GenericDeclaration;
invokeinterface java.lang.reflect.GenericDeclaration.getTypeParameters:()[Ljava/lang/reflect/TypeVariable;
astore 2
start local 2 1: aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 5
StackMap locals: sun.reflect.generics.scope.AbstractScope java.lang.String java.lang.reflect.TypeVariable[] top int int java.lang.reflect.TypeVariable[]
StackMap stack:
2: aload 6
iload 4
aaload
astore 3
start local 3 3: aload 3
invokeinterface java.lang.reflect.TypeVariable.getName:()Ljava/lang/String;
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 4
aload 3
areturn
end local 3 4: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
5: iload 4
iload 5
if_icmplt 2
6: aload 0
invokevirtual sun.reflect.generics.scope.AbstractScope.getEnclosingScope:()Lsun/reflect/generics/scope/Scope;
aload 1
invokeinterface sun.reflect.generics.scope.Scope.lookup:(Ljava/lang/String;)Ljava/lang/reflect/TypeVariable;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/reflect/generics/scope/AbstractScope<TD;>;
0 7 1 name Ljava/lang/String;
1 7 2 tas [Ljava/lang/reflect/TypeVariable;
3 4 3 tv Ljava/lang/reflect/TypeVariable<*>;
Signature: (Ljava/lang/String;)Ljava/lang/reflect/TypeVariable<*>;
MethodParameters:
Name Flags
name
}
Signature: <D::Ljava/lang/reflect/GenericDeclaration;>Ljava/lang/Object;Lsun/reflect/generics/scope/Scope;
SourceFile: "AbstractScope.java"