abstract class com.apple.laf.AquaUtils$RecyclableSingleton<T>
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: com.apple.laf.AquaUtils$RecyclableSingleton
super_class: java.lang.Object
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/apple/laf/AquaUtils$RecyclableSingleton<TT;>;
final T get();
descriptor: ()Ljava/lang/Object;
flags: (0x0010) ACC_FINAL
Code:
stack=3, locals=4, args_size=1
start local 0 0: invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
astore 1
start local 1 1: aload 1
aload 0
invokevirtual sun.awt.AppContext.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.ref.SoftReference
astore 2
start local 2 2: aload 2
ifnull 5
3: aload 2
invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
astore 3
start local 3 4: aload 3
ifnull 5
aload 3
areturn
end local 3 5: StackMap locals: sun.awt.AppContext java.lang.ref.SoftReference
StackMap stack:
aload 0
invokevirtual com.apple.laf.AquaUtils$RecyclableSingleton.getInstance:()Ljava/lang/Object;
astore 3
start local 3 6: new java.lang.ref.SoftReference
dup
aload 3
invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
astore 2
7: aload 1
aload 0
aload 2
invokevirtual sun.awt.AppContext.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/apple/laf/AquaUtils$RecyclableSingleton<TT;>;
1 9 1 appContext Lsun/awt/AppContext;
2 9 2 ref Ljava/lang/ref/SoftReference<TT;>;
4 5 3 object TT;
6 9 3 object TT;
Signature: ()TT;
void reset();
descriptor: ()V
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
aload 0
invokevirtual sun.awt.AppContext.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/apple/laf/AquaUtils$RecyclableSingleton<TT;>;
abstract T getInstance();
descriptor: ()Ljava/lang/Object;
flags: (0x0400) ACC_ABSTRACT
Signature: ()TT;
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "AquaUtils.java"
NestHost: com.apple.laf.AquaUtils
InnerClasses:
abstract RecyclableSingleton = com.apple.laf.AquaUtils$RecyclableSingleton of com.apple.laf.AquaUtils