public class com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode extends com.oracle.truffle.nfi.test.NFITest$NFITestRootNode
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode
super_class: com.oracle.truffle.nfi.test.NFITest$NFITestRootNode
{
final java.lang.Object throwingCallback;
descriptor: Ljava/lang/Object;
flags: (0x0010) ACC_FINAL
final java.lang.Object nativeJustCall;
descriptor: Ljava/lang/Object;
flags: (0x0010) ACC_FINAL
com.oracle.truffle.api.interop.InteropLibrary nativeJustCallInterop;
descriptor: Lcom/oracle/truffle/api/interop/InteropLibrary;
flags: (0x0000)
RuntimeVisibleAnnotations:
com.oracle.truffle.api.nodes.Node$Child()
final com.oracle.truffle.nfi.test.ExceptionNFITest this$0;
descriptor: Lcom/oracle/truffle/nfi/test/ExceptionNFITest;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
public void <init>(com.oracle.truffle.nfi.test.ExceptionNFITest);
descriptor: (Lcom/oracle/truffle/nfi/test/ExceptionNFITest;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode.this$0:Lcom/oracle/truffle/nfi/test/ExceptionNFITest;
aload 0
invokespecial com.oracle.truffle.nfi.test.NFITest$NFITestRootNode.<init>:()V
1: aload 0
new com.oracle.truffle.nfi.test.interop.TestCallback
dup
iconst_0
invokedynamic call()Lcom/oracle/truffle/nfi/test/interop/TestCallback$Function;
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:
([Ljava/lang/Object;)Ljava/lang/Object;
com/oracle/truffle/nfi/test/ExceptionNFITest$NativeCallbackNode.lambda$0([Ljava/lang/Object;)Ljava/lang/Object; (6)
([Ljava/lang/Object;)Ljava/lang/Object;
invokespecial com.oracle.truffle.nfi.test.interop.TestCallback.<init>:(ILcom/oracle/truffle/nfi/test/interop/TestCallback$Function;)V
putfield com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode.throwingCallback:Ljava/lang/Object;
2: aload 0
ldc "native_just_call"
ldc "(():void) : void"
invokestatic com.oracle.truffle.nfi.test.ExceptionNFITest.lookupAndBind:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
putfield com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode.nativeJustCall:Ljava/lang/Object;
3: aload 0
aload 0
getfield com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode.nativeJustCall:Ljava/lang/Object;
invokestatic com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode.getInterop:(Ljava/lang/Object;)Lcom/oracle/truffle/api/interop/InteropLibrary;
putfield com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode.nativeJustCallInterop:Lcom/oracle/truffle/api/interop/InteropLibrary;
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/oracle/truffle/nfi/test/ExceptionNFITest$NativeCallbackNode;
MethodParameters:
Name Flags
this$0 final
public java.lang.Object executeTest(com.oracle.truffle.api.frame.VirtualFrame);
descriptor: (Lcom/oracle/truffle/api/frame/VirtualFrame;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode.nativeJustCallInterop:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 0
getfield com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode.nativeJustCall:Ljava/lang/Object;
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode.throwingCallback:Ljava/lang/Object;
aastore
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.execute:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/nfi/test/ExceptionNFITest$NativeCallbackNode;
0 1 1 frame Lcom/oracle/truffle/api/frame/VirtualFrame;
Exceptions:
throws com.oracle.truffle.api.interop.InteropException
MethodParameters:
Name Flags
frame
private static java.lang.Object lambda$0(java.lang.Object[]);
descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: new com.oracle.truffle.nfi.test.ExceptionNFITest$MyException
dup
invokespecial com.oracle.truffle.nfi.test.ExceptionNFITest$MyException.<init>:()V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 args [Ljava/lang/Object;
}
SourceFile: "ExceptionNFITest.java"
NestHost: com.oracle.truffle.nfi.test.ExceptionNFITest
InnerClasses:
public abstract Child = com.oracle.truffle.api.nodes.Node$Child of com.oracle.truffle.api.nodes.Node
MyException = com.oracle.truffle.nfi.test.ExceptionNFITest$MyException of com.oracle.truffle.nfi.test.ExceptionNFITest
public NativeCallbackNode = com.oracle.truffle.nfi.test.ExceptionNFITest$NativeCallbackNode of com.oracle.truffle.nfi.test.ExceptionNFITest
protected abstract NFITestRootNode = com.oracle.truffle.nfi.test.NFITest$NFITestRootNode of com.oracle.truffle.nfi.test.NFITest
public abstract Function = com.oracle.truffle.nfi.test.interop.TestCallback$Function of com.oracle.truffle.nfi.test.interop.TestCallback
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles