final class jdk.nashorn.internal.objects.NativeArray$PopLinkLogic extends jdk.nashorn.internal.objects.NativeArray$ArrayLinkLogic
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: jdk.nashorn.internal.objects.NativeArray$PopLinkLogic
super_class: jdk.nashorn.internal.objects.NativeArray$ArrayLinkLogic
{
private static final jdk.nashorn.internal.objects.annotations.SpecializedFunction$LinkLogic INSTANCE;
descriptor: Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new jdk.nashorn.internal.objects.NativeArray$PopLinkLogic
dup
invokespecial jdk.nashorn.internal.objects.NativeArray$PopLinkLogic.<init>:()V
putstatic jdk.nashorn.internal.objects.NativeArray$PopLinkLogic.INSTANCE:Ljdk/nashorn/internal/objects/annotations/SpecializedFunction$LinkLogic;
return
LocalVariableTable:
Start End Slot Name Signature
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial jdk.nashorn.internal.objects.NativeArray$ArrayLinkLogic.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/nashorn/internal/objects/NativeArray$PopLinkLogic;
public boolean canLink(java.lang.Object, jdk.dynalink.CallSiteDescriptor, jdk.dynalink.linker.LinkRequest);
descriptor: (Ljava/lang/Object;Ljdk/dynalink/CallSiteDescriptor;Ljdk/dynalink/linker/LinkRequest;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokestatic jdk.nashorn.internal.objects.NativeArray$PopLinkLogic.getContinuousNonEmptyArrayData:(Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/arrays/ContinuousArrayData;
astore 4
start local 4 1: aload 4
ifnull 8
2: aload 4
invokevirtual jdk.nashorn.internal.runtime.arrays.ContinuousArrayData.getElementType:()Ljava/lang/Class;
astore 5
start local 5 3: aload 2
invokevirtual jdk.dynalink.CallSiteDescriptor.getMethodType:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
astore 6
start local 6 4: aload 6
invokestatic jdk.nashorn.internal.runtime.JSType.getAccessorTypeIndex:(Ljava/lang/Class;)I
aload 5
invokestatic jdk.nashorn.internal.runtime.JSType.getAccessorTypeIndex:(Ljava/lang/Class;)I
if_icmplt 5
iconst_1
goto 6
StackMap locals: jdk.nashorn.internal.runtime.arrays.ContinuousArrayData java.lang.Class java.lang.Class
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 7
start local 7 7: iload 7
ireturn
end local 7 end local 6 end local 5 8: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljdk/nashorn/internal/objects/NativeArray$PopLinkLogic;
0 9 1 self Ljava/lang/Object;
0 9 2 desc Ljdk/dynalink/CallSiteDescriptor;
0 9 3 request Ljdk/dynalink/linker/LinkRequest;
1 9 4 data Ljdk/nashorn/internal/runtime/arrays/ContinuousArrayData;
3 8 5 elementType Ljava/lang/Class<*>;
4 8 6 returnType Ljava/lang/Class<*>;
7 8 7 typeFits Z
MethodParameters:
Name Flags
self final
desc final
request final
private static jdk.nashorn.internal.runtime.arrays.ContinuousArrayData getContinuousNonEmptyArrayData(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/arrays/ContinuousArrayData;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
invokestatic jdk.nashorn.internal.objects.NativeArray$PopLinkLogic.getContinuousArrayData:(Ljava/lang/Object;)Ljdk/nashorn/internal/runtime/arrays/ContinuousArrayData;
astore 1
start local 1 1: aload 1
ifnull 5
2: aload 1
invokevirtual jdk.nashorn.internal.runtime.arrays.ContinuousArrayData.length:()J
lconst_0
lcmp
ifne 3
aconst_null
goto 4
StackMap locals: jdk.nashorn.internal.runtime.arrays.ContinuousArrayData
StackMap stack:
3: aload 1
StackMap locals:
StackMap stack: jdk.nashorn.internal.runtime.arrays.ContinuousArrayData
4: areturn
5: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 self Ljava/lang/Object;
1 6 1 data Ljdk/nashorn/internal/runtime/arrays/ContinuousArrayData;
MethodParameters:
Name Flags
self final
}
SourceFile: "NativeArray.java"
NestHost: jdk.nashorn.internal.objects.NativeArray
InnerClasses:
private abstract ArrayLinkLogic = jdk.nashorn.internal.objects.NativeArray$ArrayLinkLogic of jdk.nashorn.internal.objects.NativeArray
private final PopLinkLogic = jdk.nashorn.internal.objects.NativeArray$PopLinkLogic of jdk.nashorn.internal.objects.NativeArray
public abstract LinkLogic = jdk.nashorn.internal.objects.annotations.SpecializedFunction$LinkLogic of jdk.nashorn.internal.objects.annotations.SpecializedFunction