abstract class com.oracle.truffle.nfi.test.KeyInfoNFITest$VerifyKeyInfoNode extends com.oracle.truffle.api.nodes.Node
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: com.oracle.truffle.nfi.test.KeyInfoNFITest$VerifyKeyInfoNode
super_class: com.oracle.truffle.api.nodes.Node
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial com.oracle.truffle.api.nodes.Node.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/oracle/truffle/nfi/test/KeyInfoNFITest$VerifyKeyInfoNode;
abstract void execute(java.lang.Object, java.lang.String, boolean, boolean, boolean);
descriptor: (Ljava/lang/Object;Ljava/lang/String;ZZZ)V
flags: (0x0400) ACC_ABSTRACT
MethodParameters:
Name Flags
object
symbol
read
invoke
optional
void verify(java.lang.Object, java.lang.String, boolean, boolean, boolean, com.oracle.truffle.api.interop.InteropLibrary);
descriptor: (Ljava/lang/Object;Ljava/lang/String;ZZZLcom/oracle/truffle/api/interop/InteropLibrary;)V
flags: (0x0000)
Code:
stack=5, locals=8, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: iload 5
ifeq 6
1: ldc "isMemberExisting"
iload 3
ifne 2
iload 4
ifne 2
iconst_0
goto 3
StackMap locals:
StackMap stack: java.lang.String
2: iconst_1
StackMap locals: com.oracle.truffle.nfi.test.KeyInfoNFITest$VerifyKeyInfoNode java.lang.Object java.lang.String int int int com.oracle.truffle.api.interop.InteropLibrary
StackMap stack: java.lang.String int
3: aload 6
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberExisting:(Ljava/lang/Object;Ljava/lang/String;)Z
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBooleanOptional:(Ljava/lang/String;ZZ)V
4: ldc "isMemberReadable"
iload 3
aload 6
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberReadable:(Ljava/lang/Object;Ljava/lang/String;)Z
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBooleanOptional:(Ljava/lang/String;ZZ)V
5: goto 10
6: StackMap locals:
StackMap stack:
ldc "isMemberExisting"
iload 3
ifne 7
iload 4
ifne 7
iconst_0
goto 8
StackMap locals:
StackMap stack: java.lang.String
7: iconst_1
StackMap locals: com.oracle.truffle.nfi.test.KeyInfoNFITest$VerifyKeyInfoNode java.lang.Object java.lang.String int int int com.oracle.truffle.api.interop.InteropLibrary
StackMap stack: java.lang.String int
8: aload 6
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberExisting:(Ljava/lang/Object;Ljava/lang/String;)Z
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBoolean:(Ljava/lang/String;ZZ)V
9: ldc "isMemberReadable"
iload 3
aload 6
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberReadable:(Ljava/lang/Object;Ljava/lang/String;)Z
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBoolean:(Ljava/lang/String;ZZ)V
10: StackMap locals:
StackMap stack:
aload 6
aload 1
aload 2
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest$VerifyKeyInfoNode.tryRead:(Lcom/oracle/truffle/api/interop/InteropLibrary;Ljava/lang/Object;Ljava/lang/String;)Z
istore 7
start local 7 11: ldc "trying to read member"
iload 3
iload 7
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBoolean:(Ljava/lang/String;ZZ)V
12: ldc "isMemberInvocable"
iload 4
aload 6
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberInvocable:(Ljava/lang/Object;Ljava/lang/String;)Z
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBoolean:(Ljava/lang/String;ZZ)V
13: ldc "isMemberInsertable"
iconst_0
aload 6
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberInsertable:(Ljava/lang/Object;Ljava/lang/String;)Z
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBoolean:(Ljava/lang/String;ZZ)V
14: ldc "isMemberModifiable"
iconst_0
aload 6
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberModifiable:(Ljava/lang/Object;Ljava/lang/String;)Z
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBoolean:(Ljava/lang/String;ZZ)V
15: ldc "isMemberWritable"
iconst_0
aload 6
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberWritable:(Ljava/lang/Object;Ljava/lang/String;)Z
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBoolean:(Ljava/lang/String;ZZ)V
16: ldc "isMemberRemovable"
iconst_0
aload 6
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberRemovable:(Ljava/lang/Object;Ljava/lang/String;)Z
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBoolean:(Ljava/lang/String;ZZ)V
17: ldc "isMemberInternal"
iconst_0
aload 6
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.isMemberInternal:(Ljava/lang/Object;Ljava/lang/String;)Z
invokestatic com.oracle.truffle.nfi.test.KeyInfoNFITest.assertBoolean:(Ljava/lang/String;ZZ)V
18: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lcom/oracle/truffle/nfi/test/KeyInfoNFITest$VerifyKeyInfoNode;
0 19 1 object Ljava/lang/Object;
0 19 2 symbol Ljava/lang/String;
0 19 3 read Z
0 19 4 invoke Z
0 19 5 optional Z
0 19 6 interop Lcom/oracle/truffle/api/interop/InteropLibrary;
11 19 7 success Z
RuntimeVisibleAnnotations:
com.oracle.truffle.api.dsl.Specialization(limit = "3")
RuntimeInvisibleParameterAnnotations:
0:
1:
2:
3:
4:
5:
com.oracle.truffle.api.library.CachedLibrary(value = "object")
MethodParameters:
Name Flags
object
symbol
read
invoke
optional
interop
static boolean tryRead(com.oracle.truffle.api.interop.InteropLibrary, java.lang.Object, java.lang.String);
descriptor: (Lcom/oracle/truffle/api/interop/InteropLibrary;Ljava/lang/Object;Ljava/lang/String;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.readMember:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
pop
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack: com.oracle.truffle.api.interop.InteropException
pop
3: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 interop Lcom/oracle/truffle/api/interop/InteropLibrary;
0 4 1 object Ljava/lang/Object;
0 4 2 symbol Ljava/lang/String;
Exception table:
from to target type
0 1 2 Class com.oracle.truffle.api.interop.InteropException
RuntimeVisibleAnnotations:
com.oracle.truffle.api.CompilerDirectives$TruffleBoundary()
MethodParameters:
Name Flags
interop
object
symbol
}
SourceFile: "KeyInfoNFITest.java"
NestHost: com.oracle.truffle.nfi.test.KeyInfoNFITest
InnerClasses:
public abstract TruffleBoundary = com.oracle.truffle.api.CompilerDirectives$TruffleBoundary of com.oracle.truffle.api.CompilerDirectives
abstract VerifyKeyInfoNode = com.oracle.truffle.nfi.test.KeyInfoNFITest$VerifyKeyInfoNode of com.oracle.truffle.nfi.test.KeyInfoNFITest