public class com.oracle.truffle.nfi.test.parser.ParseSignatureTest
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.oracle.truffle.nfi.test.parser.ParseSignatureTest
super_class: java.lang.Object
{
public static com.oracle.truffle.tck.TruffleRunner$RunWithPolyglotRule runWithPolyglot;
descriptor: Lcom/oracle/truffle/tck/TruffleRunner$RunWithPolyglotRule;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
RuntimeVisibleAnnotations:
org.junit.ClassRule()
private static com.oracle.truffle.api.interop.InteropLibrary INTEROP;
descriptor: Lcom/oracle/truffle/api/interop/InteropLibrary;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static java.lang.Object testSymbol;
descriptor: Ljava/lang/Object;
flags: (0x0008) ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.oracle.truffle.tck.TruffleRunner$RunWithPolyglotRule
dup
invokespecial com.oracle.truffle.tck.TruffleRunner$RunWithPolyglotRule.<init>:()V
putstatic com.oracle.truffle.nfi.test.parser.ParseSignatureTest.runWithPolyglot:Lcom/oracle/truffle/tck/TruffleRunner$RunWithPolyglotRule;
1: invokestatic com.oracle.truffle.api.interop.InteropLibrary.getFactory:()Lcom/oracle/truffle/api/library/LibraryFactory;
invokevirtual com.oracle.truffle.api.library.LibraryFactory.getUncached:()Lcom/oracle/truffle/api/library/Library;
checkcast com.oracle.truffle.api.interop.InteropLibrary
putstatic com.oracle.truffle.nfi.test.parser.ParseSignatureTest.INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
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/oracle/truffle/nfi/test/parser/ParseSignatureTest;
public static void loadTestSymbol();
descriptor: ()V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=3, args_size=0
0: ldc "nfi"
ldc "with test default"
ldc "ParseSignatureTest"
invokestatic com.oracle.truffle.api.source.Source.newBuilder:(Ljava/lang/String;Ljava/lang/CharSequence;Ljava/lang/String;)Lcom/oracle/truffle/api/source/Source$LiteralBuilder;
iconst_1
invokevirtual com.oracle.truffle.api.source.Source$LiteralBuilder.internal:(Z)Lcom/oracle/truffle/api/source/Source$LiteralBuilder;
invokevirtual com.oracle.truffle.api.source.Source$LiteralBuilder.build:()Lcom/oracle/truffle/api/source/Source;
astore 0
start local 0 1: getstatic com.oracle.truffle.nfi.test.parser.ParseSignatureTest.runWithPolyglot:Lcom/oracle/truffle/tck/TruffleRunner$RunWithPolyglotRule;
invokevirtual com.oracle.truffle.tck.TruffleRunner$RunWithPolyglotRule.getTruffleTestEnv:()Lcom/oracle/truffle/api/TruffleLanguage$Env;
aload 0
iconst_0
anewarray java.lang.String
invokevirtual com.oracle.truffle.api.TruffleLanguage$Env.parseInternal:(Lcom/oracle/truffle/api/source/Source;[Ljava/lang/String;)Lcom/oracle/truffle/api/CallTarget;
astore 1
start local 1 2: aload 1
iconst_0
anewarray java.lang.Object
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
astore 2
start local 2 3: getstatic com.oracle.truffle.nfi.test.parser.ParseSignatureTest.INTEROP:Lcom/oracle/truffle/api/interop/InteropLibrary;
aload 2
ldc "testSymbol"
invokevirtual com.oracle.truffle.api.interop.InteropLibrary.readMember:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
putstatic com.oracle.truffle.nfi.test.parser.ParseSignatureTest.testSymbol:Ljava/lang/Object;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 5 0 source Lcom/oracle/truffle/api/source/Source;
2 5 1 target Lcom/oracle/truffle/api/CallTarget;
3 5 2 library Ljava/lang/Object;
Exceptions:
throws com.oracle.truffle.api.interop.InteropException
RuntimeVisibleAnnotations:
org.junit.BeforeClass()
protected static com.oracle.truffle.nfi.test.parser.backend.TestSignature getSignature(com.oracle.truffle.api.CallTarget, int);
descriptor: (Lcom/oracle/truffle/api/CallTarget;I)Lcom/oracle/truffle/nfi/test/parser/backend/TestSignature;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
iconst_0
anewarray java.lang.Object
invokeinterface com.oracle.truffle.api.CallTarget.call:([Ljava/lang/Object;)Ljava/lang/Object;
astore 2
start local 2 1: invokestatic com.oracle.truffle.nfi.api.SignatureLibrary.getUncached:()Lcom/oracle/truffle/nfi/api/SignatureLibrary;
aload 2
getstatic com.oracle.truffle.nfi.test.parser.ParseSignatureTest.testSymbol:Ljava/lang/Object;
iload 1
anewarray java.lang.Object
invokevirtual com.oracle.truffle.nfi.api.SignatureLibrary.call:(Ljava/lang/Object;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.oracle.truffle.nfi.test.parser.backend.TestCallInfo
astore 3
start local 3 2: aload 3
getfield com.oracle.truffle.nfi.test.parser.backend.TestCallInfo.signature:Lcom/oracle/truffle/nfi/test/parser/backend/TestSignature;
3: areturn
end local 3 4: StackMap locals: com.oracle.truffle.api.CallTarget int java.lang.Object
StackMap stack: com.oracle.truffle.api.interop.InteropException
astore 3
start local 3 5: new java.lang.AssertionError
dup
aload 3
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 parsedSignature Lcom/oracle/truffle/api/CallTarget;
0 6 1 argCount I
1 6 2 ret Ljava/lang/Object;
2 4 3 info Lcom/oracle/truffle/nfi/test/parser/backend/TestCallInfo;
5 6 3 ex Lcom/oracle/truffle/api/interop/InteropException;
Exception table:
from to target type
1 3 4 Class com.oracle.truffle.api.interop.InteropException
MethodParameters:
Name Flags
parsedSignature
argCount
protected static org.hamcrest.Matcher<java.lang.Object> isArrayType(com.oracle.truffle.nfi.spi.types.NativeSimpleType);
descriptor: (Lcom/oracle/truffle/nfi/spi/types/NativeSimpleType;)Lorg/hamcrest/Matcher;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: new com.oracle.truffle.nfi.test.parser.ParseSignatureTest$1
dup
ldc Lcom/oracle/truffle/nfi/test/parser/backend/NFITestBackend$ArrayType;
aload 0
invokespecial com.oracle.truffle.nfi.test.parser.ParseSignatureTest$1.<init>:(Ljava/lang/Class;Lcom/oracle/truffle/nfi/spi/types/NativeSimpleType;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 expected Lcom/oracle/truffle/nfi/spi/types/NativeSimpleType;
Signature: (Lcom/oracle/truffle/nfi/spi/types/NativeSimpleType;)Lorg/hamcrest/Matcher<Ljava/lang/Object;>;
MethodParameters:
Name Flags
expected
}
SourceFile: "ParseSignatureTest.java"
NestMembers:
com.oracle.truffle.nfi.test.parser.ParseSignatureTest$1 com.oracle.truffle.nfi.test.parser.ParseSignatureTest$InlineCacheNode com.oracle.truffle.nfi.test.parser.ParseSignatureTest$ParseSignatureNode
InnerClasses:
public final Env = com.oracle.truffle.api.TruffleLanguage$Env of com.oracle.truffle.api.TruffleLanguage
public final LiteralBuilder = com.oracle.truffle.api.source.Source$LiteralBuilder of com.oracle.truffle.api.source.Source
com.oracle.truffle.nfi.test.parser.ParseSignatureTest$1
abstract InlineCacheNode = com.oracle.truffle.nfi.test.parser.ParseSignatureTest$InlineCacheNode of com.oracle.truffle.nfi.test.parser.ParseSignatureTest
ParseSignatureNode = com.oracle.truffle.nfi.test.parser.ParseSignatureTest$ParseSignatureNode of com.oracle.truffle.nfi.test.parser.ParseSignatureTest
public final ArrayType = com.oracle.truffle.nfi.test.parser.backend.NFITestBackend$ArrayType of com.oracle.truffle.nfi.test.parser.backend.NFITestBackend
public final RunWithPolyglotRule = com.oracle.truffle.tck.TruffleRunner$RunWithPolyglotRule of com.oracle.truffle.tck.TruffleRunner