public class jdk.internal.foreign.abi.ProgrammableUpcallHandler implements jdk.internal.foreign.abi.UpcallHandler
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jdk.internal.foreign.abi.ProgrammableUpcallHandler
super_class: java.lang.Object
{
private static final boolean DEBUG;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.VarHandle VH_LONG;
descriptor: Ljava/lang/invoke/VarHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.lang.invoke.MethodHandle mh;
descriptor: Ljava/lang/invoke/MethodHandle;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
RuntimeVisibleAnnotations:
jdk.internal.vm.annotation.Stable()
private final java.lang.invoke.MethodType type;
descriptor: Ljava/lang/invoke/MethodType;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.internal.foreign.abi.CallingSequence callingSequence;
descriptor: Ljdk/internal/foreign/abi/CallingSequence;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final long entryPoint;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.internal.foreign.abi.ABIDescriptor abi;
descriptor: Ljdk/internal/foreign/abi/ABIDescriptor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final jdk.internal.foreign.abi.BufferLayout layout;
descriptor: Ljdk/internal/foreign/abi/BufferLayout;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: ldc "jdk.internal.foreign.ProgrammableUpcallHandler.DEBUG"
invokestatic sun.security.action.GetBooleanAction.privilegedGetProperty:(Ljava/lang/String;)Z
1: putstatic jdk.internal.foreign.abi.ProgrammableUpcallHandler.DEBUG:Z
2: getstatic jdk.incubator.foreign.MemoryLayouts.JAVA_LONG:Ljdk/incubator/foreign/ValueLayout;
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
iconst_0
anewarray jdk.incubator.foreign.MemoryLayout$PathElement
invokevirtual jdk.incubator.foreign.ValueLayout.varHandle:(Ljava/lang/Class;[Ljdk/incubator/foreign/MemoryLayout$PathElement;)Ljava/lang/invoke/VarHandle;
putstatic jdk.internal.foreign.abi.ProgrammableUpcallHandler.VH_LONG:Ljava/lang/invoke/VarHandle;
3: invokestatic jdk.internal.foreign.abi.ProgrammableUpcallHandler.registerNatives:()V
4: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(jdk.internal.foreign.abi.ABIDescriptor, java.lang.invoke.MethodHandle, jdk.internal.foreign.abi.CallingSequence);
descriptor: (Ljdk/internal/foreign/abi/ABIDescriptor;Ljava/lang/invoke/MethodHandle;Ljdk/internal/foreign/abi/CallingSequence;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.abi:Ljdk/internal/foreign/abi/ABIDescriptor;
2: aload 0
aload 1
invokestatic jdk.internal.foreign.abi.BufferLayout.of:(Ljdk/internal/foreign/abi/ABIDescriptor;)Ljdk/internal/foreign/abi/BufferLayout;
putfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.layout:Ljdk/internal/foreign/abi/BufferLayout;
3: aload 0
aload 3
invokevirtual jdk.internal.foreign.abi.CallingSequence.methodType:()Ljava/lang/invoke/MethodType;
putfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.type:Ljava/lang/invoke/MethodType;
4: aload 0
aload 3
putfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.callingSequence:Ljdk/internal/foreign/abi/CallingSequence;
5: aload 0
aload 2
ldc [Ljava/lang/Object;
aload 3
invokevirtual jdk.internal.foreign.abi.CallingSequence.methodType:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
invokevirtual java.lang.invoke.MethodHandle.asSpreader:(Ljava/lang/Class;I)Ljava/lang/invoke/MethodHandle;
putfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.mh:Ljava/lang/invoke/MethodHandle;
6: aload 0
aload 0
aload 1
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.layout:Ljdk/internal/foreign/abi/BufferLayout;
invokevirtual jdk.internal.foreign.abi.ProgrammableUpcallHandler.allocateUpcallStub:(Ljdk/internal/foreign/abi/ABIDescriptor;Ljdk/internal/foreign/abi/BufferLayout;)J
putfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.entryPoint:J
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljdk/internal/foreign/abi/ProgrammableUpcallHandler;
0 8 1 abi Ljdk/internal/foreign/abi/ABIDescriptor;
0 8 2 target Ljava/lang/invoke/MethodHandle;
0 8 3 callingSequence Ljdk/internal/foreign/abi/CallingSequence;
MethodParameters:
Name Flags
abi
target
callingSequence
public long entryPoint();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.entryPoint:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/foreign/abi/ProgrammableUpcallHandler;
public static void invoke(jdk.internal.foreign.abi.ProgrammableUpcallHandler, long);
descriptor: (Ljdk/internal/foreign/abi/ProgrammableUpcallHandler;J)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
lload 1
invokestatic jdk.incubator.foreign.MemoryAddress.ofLong:(J)Ljdk/incubator/foreign/MemoryAddress;
invokevirtual jdk.internal.foreign.abi.ProgrammableUpcallHandler.invoke:(Ljdk/incubator/foreign/MemoryAddress;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 handler Ljdk/internal/foreign/abi/ProgrammableUpcallHandler;
0 2 1 address J
MethodParameters:
Name Flags
handler
address
private void invoke(jdk.incubator.foreign.MemoryAddress);
descriptor: (Ljdk/incubator/foreign/MemoryAddress;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface jdk.incubator.foreign.MemoryAddress.toRawLongValue:()J
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.layout:Ljdk/internal/foreign/abi/BufferLayout;
getfield jdk.internal.foreign.abi.BufferLayout.size:J
invokestatic jdk.internal.foreign.MemoryAddressImpl.ofLongUnchecked:(JJ)Ljdk/incubator/foreign/MemorySegment;
astore 2
start local 2 1: getstatic jdk.internal.foreign.abi.ProgrammableUpcallHandler.DEBUG:Z
ifeq 4
2: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "Buffer state before:"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
3: aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.layout:Ljdk/internal/foreign/abi/BufferLayout;
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.abi:Ljdk/internal/foreign/abi/ABIDescriptor;
getfield jdk.internal.foreign.abi.ABIDescriptor.arch:Ljdk/internal/foreign/abi/Architecture;
aload 2
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokevirtual jdk.internal.foreign.abi.BufferLayout.dump:(Ljdk/internal/foreign/abi/Architecture;Ljdk/incubator/foreign/MemorySegment;Ljava/io/PrintStream;)V
4: StackMap locals: jdk.incubator.foreign.MemorySegment
StackMap stack:
getstatic jdk.internal.foreign.abi.ProgrammableUpcallHandler.VH_LONG:Ljava/lang/invoke/VarHandle;
aload 2
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.layout:Ljdk/internal/foreign/abi/BufferLayout;
getfield jdk.internal.foreign.abi.BufferLayout.stack_args:J
invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(J)Ljdk/incubator/foreign/MemorySegment;
invokevirtual java.lang.invoke.VarHandle.get:(Ljdk/incubator/foreign/MemorySegment;)J
invokestatic jdk.internal.foreign.MemoryAddressImpl.ofLongUnchecked:(J)Ljdk/incubator/foreign/MemorySegment;
astore 3
start local 3 5: aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.type:Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
anewarray java.lang.Object
astore 4
start local 4 6: iconst_0
istore 5
start local 5 7: goto 13
8: StackMap locals: jdk.incubator.foreign.MemorySegment java.lang.Object[] int
StackMap stack:
aload 4
iload 5
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.callingSequence:Ljdk/internal/foreign/abi/CallingSequence;
iload 5
invokevirtual jdk.internal.foreign.abi.CallingSequence.argumentBindings:(I)Ljava/util/List;
9: aload 0
aload 3
aload 2
invokedynamic load(Ljdk/internal/foreign/abi/ProgrammableUpcallHandler;Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;)Ljdk/internal/foreign/abi/BindingInterpreter$LoadFunc;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljdk/internal/foreign/abi/VMStorage;Ljava/lang/Class;)Ljava/lang/Object;
jdk/internal/foreign/abi/ProgrammableUpcallHandler.lambda$0(Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;Ljdk/internal/foreign/abi/VMStorage;Ljava/lang/Class;)Ljava/lang/Object; (7)
(Ljdk/internal/foreign/abi/VMStorage;Ljava/lang/Class;)Ljava/lang/Object;
10: getstatic jdk.internal.foreign.abi.SharedUtils.DEFAULT_ALLOCATOR:Ljdk/internal/foreign/abi/SharedUtils$Allocator;
11: invokestatic jdk.internal.foreign.abi.BindingInterpreter.box:(Ljava/util/List;Ljdk/internal/foreign/abi/BindingInterpreter$LoadFunc;Ljdk/internal/foreign/abi/SharedUtils$Allocator;)Ljava/lang/Object;
aastore
12: iinc 5 1
StackMap locals:
StackMap stack:
13: iload 5
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.type:Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.parameterCount:()I
if_icmplt 8
end local 5 14: getstatic jdk.internal.foreign.abi.ProgrammableUpcallHandler.DEBUG:Z
ifeq 17
15: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "Java arguments:"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
16: getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 4
invokestatic java.util.Arrays.toString:([Ljava/lang/Object;)Ljava/lang/String;
iconst_2
invokevirtual java.lang.String.indent:(I)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
17: StackMap locals:
StackMap stack:
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.mh:Ljava/lang/invoke/MethodHandle;
aload 4
invokevirtual java.lang.invoke.MethodHandle.invoke:([Ljava/lang/Object;)Ljava/lang/Object;
astore 5
start local 5 18: getstatic jdk.internal.foreign.abi.ProgrammableUpcallHandler.DEBUG:Z
ifeq 21
19: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "Java return:"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
20: getstatic java.lang.System.err:Ljava/io/PrintStream;
aload 5
invokestatic java.util.Objects.toString:(Ljava/lang/Object;)Ljava/lang/String;
iconst_2
invokevirtual java.lang.String.indent:(I)Ljava/lang/String;
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
21: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.mh:Ljava/lang/invoke/MethodHandle;
invokevirtual java.lang.invoke.MethodHandle.type:()Ljava/lang/invoke/MethodType;
invokevirtual java.lang.invoke.MethodType.returnType:()Ljava/lang/Class;
getstatic java.lang.Void.TYPE:Ljava/lang/Class;
if_acmpeq 26
22: aload 5
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.callingSequence:Ljdk/internal/foreign/abi/CallingSequence;
invokevirtual jdk.internal.foreign.abi.CallingSequence.returnBindings:()Ljava/util/List;
23: aload 0
aload 2
invokedynamic store(Ljdk/internal/foreign/abi/ProgrammableUpcallHandler;Ljdk/incubator/foreign/MemorySegment;)Ljdk/internal/foreign/abi/BindingInterpreter$StoreFunc;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljdk/internal/foreign/abi/VMStorage;Ljava/lang/Class;Ljava/lang/Object;)V
jdk/internal/foreign/abi/ProgrammableUpcallHandler.lambda$1(Ljdk/incubator/foreign/MemorySegment;Ljdk/internal/foreign/abi/VMStorage;Ljava/lang/Class;Ljava/lang/Object;)V (7)
(Ljdk/internal/foreign/abi/VMStorage;Ljava/lang/Class;Ljava/lang/Object;)V
24: aconst_null
25: invokestatic jdk.internal.foreign.abi.BindingInterpreter.unbox:(Ljava/lang/Object;Ljava/util/List;Ljdk/internal/foreign/abi/BindingInterpreter$StoreFunc;Ljdk/internal/foreign/abi/SharedUtils$Allocator;)V
26: StackMap locals:
StackMap stack:
getstatic jdk.internal.foreign.abi.ProgrammableUpcallHandler.DEBUG:Z
ifeq 32
27: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "Buffer state after:"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
28: aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.layout:Ljdk/internal/foreign/abi/BufferLayout;
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.abi:Ljdk/internal/foreign/abi/ABIDescriptor;
getfield jdk.internal.foreign.abi.ABIDescriptor.arch:Ljdk/internal/foreign/abi/Architecture;
aload 2
getstatic java.lang.System.err:Ljava/io/PrintStream;
invokevirtual jdk.internal.foreign.abi.BufferLayout.dump:(Ljdk/internal/foreign/abi/Architecture;Ljdk/incubator/foreign/MemorySegment;Ljava/io/PrintStream;)V
end local 5 end local 4 end local 3 end local 2 29: goto 32
StackMap locals: jdk.internal.foreign.abi.ProgrammableUpcallHandler jdk.incubator.foreign.MemoryAddress
StackMap stack: java.lang.Throwable
30: astore 2
start local 2 31: new java.lang.IllegalStateException
dup
aload 2
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 32: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Ljdk/internal/foreign/abi/ProgrammableUpcallHandler;
0 33 1 buffer Ljdk/incubator/foreign/MemoryAddress;
1 29 2 bufferBase Ljdk/incubator/foreign/MemorySegment;
5 29 3 stackArgsBase Ljdk/incubator/foreign/MemorySegment;
6 29 4 args [Ljava/lang/Object;
7 14 5 i I
18 29 5 o Ljava/lang/Object;
31 32 2 t Ljava/lang/Throwable;
Exception table:
from to target type
0 29 30 Class java.lang.Throwable
MethodParameters:
Name Flags
buffer
public native long allocateUpcallStub(jdk.internal.foreign.abi.ABIDescriptor, jdk.internal.foreign.abi.BufferLayout);
descriptor: (Ljdk/internal/foreign/abi/ABIDescriptor;Ljdk/internal/foreign/abi/BufferLayout;)J
flags: (0x0101) ACC_PUBLIC, ACC_NATIVE
MethodParameters:
Name Flags
abi
layout
private static native void registerNatives();
descriptor: ()V
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
private java.lang.Object lambda$0(jdk.incubator.foreign.MemorySegment, jdk.incubator.foreign.MemorySegment, jdk.internal.foreign.abi.VMStorage, java.lang.Class);
descriptor: (Ljdk/incubator/foreign/MemorySegment;Ljdk/incubator/foreign/MemorySegment;Ljdk/internal/foreign/abi/VMStorage;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=6, args_size=5
start local 0 start local 3 start local 4 0: aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.abi:Ljdk/internal/foreign/abi/ABIDescriptor;
getfield jdk.internal.foreign.abi.ABIDescriptor.arch:Ljdk/internal/foreign/abi/Architecture;
aload 3
invokevirtual jdk.internal.foreign.abi.VMStorage.type:()I
invokeinterface jdk.internal.foreign.abi.Architecture.isStackType:(I)Z
ifeq 2
1: aload 1
aload 3
invokevirtual jdk.internal.foreign.abi.VMStorage.index:()I
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.abi:Ljdk/internal/foreign/abi/ABIDescriptor;
getfield jdk.internal.foreign.abi.ABIDescriptor.arch:Ljdk/internal/foreign/abi/Architecture;
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.abi:Ljdk/internal/foreign/abi/ABIDescriptor;
getfield jdk.internal.foreign.abi.ABIDescriptor.arch:Ljdk/internal/foreign/abi/Architecture;
invokeinterface jdk.internal.foreign.abi.Architecture.stackType:()I
invokeinterface jdk.internal.foreign.abi.Architecture.typeSize:(I)I
imul
i2l
invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(J)Ljdk/incubator/foreign/MemorySegment;
goto 3
2: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.layout:Ljdk/internal/foreign/abi/BufferLayout;
aload 3
invokevirtual jdk.internal.foreign.abi.BufferLayout.argOffset:(Ljdk/internal/foreign/abi/VMStorage;)J
invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(J)Ljdk/incubator/foreign/MemorySegment;
3: StackMap locals:
StackMap stack: jdk.incubator.foreign.MemorySegment
astore 5
start local 5 4: aload 5
aload 4
invokestatic jdk.internal.foreign.abi.SharedUtils.read:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 5 end local 4 end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljdk/internal/foreign/abi/ProgrammableUpcallHandler;
0 5 3 storage Ljdk/internal/foreign/abi/VMStorage;
0 5 4 type Ljava/lang/Class<*>;
4 5 5 ptr Ljdk/incubator/foreign/MemorySegment;
private void lambda$1(jdk.incubator.foreign.MemorySegment, jdk.internal.foreign.abi.VMStorage, java.lang.Class, java.lang.Object);
descriptor: (Ljdk/incubator/foreign/MemorySegment;Ljdk/internal/foreign/abi/VMStorage;Ljava/lang/Class;Ljava/lang/Object;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=6, args_size=5
start local 0 start local 2 start local 3 start local 4 0: aload 1
aload 0
getfield jdk.internal.foreign.abi.ProgrammableUpcallHandler.layout:Ljdk/internal/foreign/abi/BufferLayout;
aload 2
invokevirtual jdk.internal.foreign.abi.BufferLayout.retOffset:(Ljdk/internal/foreign/abi/VMStorage;)J
invokeinterface jdk.incubator.foreign.MemorySegment.asSlice:(J)Ljdk/incubator/foreign/MemorySegment;
astore 5
start local 5 1: aload 5
aload 3
aload 4
invokestatic jdk.internal.foreign.abi.SharedUtils.writeOverSized:(Ljdk/incubator/foreign/MemorySegment;Ljava/lang/Class;Ljava/lang/Object;)V
end local 5 2: return
end local 4 end local 3 end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljdk/internal/foreign/abi/ProgrammableUpcallHandler;
0 3 2 storage Ljdk/internal/foreign/abi/VMStorage;
0 3 3 type Ljava/lang/Class<*>;
0 3 4 value Ljava/lang/Object;
1 2 5 ptr Ljdk/incubator/foreign/MemorySegment;
}
SourceFile: "ProgrammableUpcallHandler.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract PathElement = jdk.incubator.foreign.MemoryLayout$PathElement of jdk.incubator.foreign.MemoryLayout
abstract LoadFunc = jdk.internal.foreign.abi.BindingInterpreter$LoadFunc of jdk.internal.foreign.abi.BindingInterpreter
abstract StoreFunc = jdk.internal.foreign.abi.BindingInterpreter$StoreFunc of jdk.internal.foreign.abi.BindingInterpreter
public abstract Allocator = jdk.internal.foreign.abi.SharedUtils$Allocator of jdk.internal.foreign.abi.SharedUtils