class org.graalvm.tools.lsp.test.server.TruffleLSPTest$1 implements org.graalvm.tools.lsp.server.ContextAwareExecutor
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.graalvm.tools.lsp.test.server.TruffleLSPTest$1
super_class: java.lang.Object
{
final org.graalvm.tools.lsp.test.server.TruffleLSPTest this$0;
descriptor: Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private final org.graalvm.polyglot.Context$Builder val$contextBuilder;
descriptor: Lorg/graalvm/polyglot/Context$Builder;
flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC
void <init>(org.graalvm.tools.lsp.test.server.TruffleLSPTest, org.graalvm.polyglot.Context$Builder);
descriptor: (Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest;Lorg/graalvm/polyglot/Context$Builder;)V
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 0: aload 0
aload 1
putfield org.graalvm.tools.lsp.test.server.TruffleLSPTest$1.this$0:Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest;
aload 0
aload 2
putfield org.graalvm.tools.lsp.test.server.TruffleLSPTest$1.val$contextBuilder:Lorg/graalvm/polyglot/Context$Builder;
aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest$1;
MethodParameters:
Name Flags
this$0 final
val$contextBuilder final
public <T> java.util.concurrent.Future<T> executeWithDefaultContext(java.util.concurrent.Callable<T>);
descriptor: (Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.util.concurrent.Callable.call:()Ljava/lang/Object;
invokestatic java.util.concurrent.CompletableFuture.completedFuture:(Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture;
1: areturn
2: StackMap locals:
StackMap stack: java.lang.Exception
astore 2
start local 2 3: new java.util.concurrent.CompletableFuture
dup
invokespecial java.util.concurrent.CompletableFuture.<init>:()V
astore 3
start local 3 4: aload 3
aload 2
invokevirtual java.util.concurrent.CompletableFuture.completeExceptionally:(Ljava/lang/Throwable;)Z
pop
5: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest$1;
0 6 1 taskWithResult Ljava/util/concurrent/Callable<TT;>;
3 6 2 e Ljava/lang/Exception;
4 6 3 cf Ljava/util/concurrent/CompletableFuture<TT;>;
Exception table:
from to target type
0 1 2 Class java.lang.Exception
Signature: <T:Ljava/lang/Object;>(Ljava/util/concurrent/Callable<TT;>;)Ljava/util/concurrent/Future<TT;>;
MethodParameters:
Name Flags
taskWithResult
public <T> java.util.concurrent.Future<T> executeWithNestedContext(java.util.concurrent.Callable<T>, boolean);
descriptor: (Ljava/util/concurrent/Callable;Z)Ljava/util/concurrent/Future;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
aconst_null
astore 4
1: aload 0
getfield org.graalvm.tools.lsp.test.server.TruffleLSPTest$1.val$contextBuilder:Lorg/graalvm/polyglot/Context$Builder;
invokevirtual org.graalvm.polyglot.Context$Builder.build:()Lorg/graalvm/polyglot/Context;
astore 5
start local 5 2: aload 5
invokevirtual org.graalvm.polyglot.Context.enter:()V
3: aload 5
ldc "sl"
invokevirtual org.graalvm.polyglot.Context.initialize:(Ljava/lang/String;)Z
pop
4: aload 1
invokeinterface java.util.concurrent.Callable.call:()Ljava/lang/Object;
invokestatic java.util.concurrent.CompletableFuture.completedFuture:(Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture;
astore 9
5: aload 5
invokevirtual org.graalvm.polyglot.Context.leave:()V
6: aload 5
ifnull 7
aload 5
invokevirtual org.graalvm.polyglot.Context.close:()V
7: StackMap locals: org.graalvm.tools.lsp.test.server.TruffleLSPTest$1 java.util.concurrent.Callable int java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context top top top java.util.concurrent.Future
StackMap stack:
aload 9
areturn
8: StackMap locals: org.graalvm.tools.lsp.test.server.TruffleLSPTest$1 java.util.concurrent.Callable int java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Exception
astore 6
start local 6 9: new java.util.concurrent.CompletableFuture
dup
invokespecial java.util.concurrent.CompletableFuture.<init>:()V
astore 7
start local 7 10: aload 7
aload 6
invokevirtual java.util.concurrent.CompletableFuture.completeExceptionally:(Ljava/lang/Throwable;)Z
pop
11: aload 7
astore 9
12: aload 5
invokevirtual org.graalvm.polyglot.Context.leave:()V
13: aload 5
ifnull 14
aload 5
invokevirtual org.graalvm.polyglot.Context.close:()V
14: StackMap locals: org.graalvm.tools.lsp.test.server.TruffleLSPTest$1 java.util.concurrent.Callable int java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context java.lang.Exception java.util.concurrent.CompletableFuture top java.util.concurrent.Future
StackMap stack:
aload 9
areturn
end local 7 end local 6 15: StackMap locals: org.graalvm.tools.lsp.test.server.TruffleLSPTest$1 java.util.concurrent.Callable int java.lang.Throwable java.lang.Throwable org.graalvm.polyglot.Context
StackMap stack: java.lang.Throwable
astore 8
16: aload 5
invokevirtual org.graalvm.polyglot.Context.leave:()V
17: aload 8
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
18: astore 3
19: aload 5
ifnull 20
aload 5
invokevirtual org.graalvm.polyglot.Context.close:()V
end local 5 StackMap locals:
StackMap stack:
20: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
21: astore 4
aload 3
ifnonnull 22
aload 4
astore 3
goto 23
StackMap locals:
StackMap stack:
22: aload 3
aload 4
if_acmpeq 23
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
23: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest$1;
0 24 1 taskWithResult Ljava/util/concurrent/Callable<TT;>;
0 24 2 cached Z
2 20 5 newContext Lorg/graalvm/polyglot/Context;
9 15 6 e Ljava/lang/Exception;
10 15 7 cf Ljava/util/concurrent/CompletableFuture<TT;>;
Exception table:
from to target type
4 5 8 Class java.lang.Exception
4 5 15 any
8 12 15 any
2 6 18 any
8 13 18 any
15 18 18 any
1 7 21 any
8 14 21 any
15 21 21 any
Signature: <T:Ljava/lang/Object;>(Ljava/util/concurrent/Callable<TT;>;Z)Ljava/util/concurrent/Future<TT;>;
MethodParameters:
Name Flags
taskWithResult
cached
public <T> java.util.concurrent.Future<T> executeWithNestedContext(java.util.concurrent.Callable<T>, int, java.util.concurrent.Callable<T>);
descriptor: (Ljava/util/concurrent/Callable;ILjava/util/concurrent/Callable;)Ljava/util/concurrent/Future;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
ifgt 2
1: aload 0
aload 1
iconst_0
invokevirtual org.graalvm.tools.lsp.test.server.TruffleLSPTest$1.executeWithNestedContext:(Ljava/util/concurrent/Callable;Z)Ljava/util/concurrent/Future;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokedynamic get(Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest$1;Ljava/util/concurrent/Callable;)Ljava/util/function/Supplier;
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;
org/graalvm/tools/lsp/test/server/TruffleLSPTest$1.lambda$0(Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future; (7)
()Ljava/util/concurrent/Future;
invokestatic java.util.concurrent.CompletableFuture.supplyAsync:(Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture;
astore 4
start local 4 3: aload 4
iload 2
i2l
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.CompletableFuture.get:(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
checkcast java.util.concurrent.Future
4: areturn
5: StackMap locals: org.graalvm.tools.lsp.test.server.TruffleLSPTest$1 java.util.concurrent.Callable int java.util.concurrent.Callable java.util.concurrent.CompletableFuture
StackMap stack: java.util.concurrent.TimeoutException
pop
6: aload 4
iconst_1
invokevirtual java.util.concurrent.CompletableFuture.cancel:(Z)Z
pop
7: aload 3
invokeinterface java.util.concurrent.Callable.call:()Ljava/lang/Object;
invokestatic java.util.concurrent.CompletableFuture.completedFuture:(Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture;
8: areturn
9: StackMap locals:
StackMap stack: java.lang.Exception
astore 5
start local 5 10: new java.util.concurrent.CompletableFuture
dup
invokespecial java.util.concurrent.CompletableFuture.<init>:()V
astore 6
start local 6 11: aload 6
aload 5
invokevirtual java.util.concurrent.CompletableFuture.completeExceptionally:(Ljava/lang/Throwable;)Z
pop
12: aload 6
areturn
end local 6 end local 5 13: StackMap locals:
StackMap stack: java.lang.Exception
astore 5
start local 5 14: new java.util.concurrent.CompletableFuture
dup
invokespecial java.util.concurrent.CompletableFuture.<init>:()V
astore 6
start local 6 15: aload 6
aload 5
invokevirtual java.util.concurrent.CompletableFuture.completeExceptionally:(Ljava/lang/Throwable;)Z
pop
16: aload 6
areturn
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 17 0 this Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest$1;
0 17 1 taskWithResult Ljava/util/concurrent/Callable<TT;>;
0 17 2 timeoutMillis I
0 17 3 onTimeoutTask Ljava/util/concurrent/Callable<TT;>;
3 17 4 future Ljava/util/concurrent/CompletableFuture<Ljava/util/concurrent/Future<TT;>;>;
10 13 5 timeoutTaskException Ljava/lang/Exception;
11 13 6 cf Ljava/util/concurrent/CompletableFuture<TT;>;
14 17 5 e Ljava/lang/Exception;
15 17 6 cf Ljava/util/concurrent/CompletableFuture<TT;>;
Exception table:
from to target type
3 4 5 Class java.util.concurrent.TimeoutException
7 8 9 Class java.lang.Exception
3 4 13 Class java.lang.InterruptedException
3 4 13 Class java.util.concurrent.ExecutionException
Signature: <T:Ljava/lang/Object;>(Ljava/util/concurrent/Callable<TT;>;ILjava/util/concurrent/Callable<TT;>;)Ljava/util/concurrent/Future<TT;>;
MethodParameters:
Name Flags
taskWithResult
timeoutMillis
onTimeoutTask
public void shutdown();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest$1;
public void resetContextCache();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest$1;
private java.util.concurrent.Future lambda$0(java.util.concurrent.Callable);
descriptor: (Ljava/util/concurrent/Callable;)Ljava/util/concurrent/Future;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 0 0: aload 0
aload 1
iconst_0
invokevirtual org.graalvm.tools.lsp.test.server.TruffleLSPTest$1.executeWithNestedContext:(Ljava/util/concurrent/Callable;Z)Ljava/util/concurrent/Future;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/graalvm/tools/lsp/test/server/TruffleLSPTest$1;
}
SourceFile: "TruffleLSPTest.java"
EnclosingMethod: org.graalvm.tools.lsp.test.server.TruffleLSPTest.setup:()V
NestHost: org.graalvm.tools.lsp.test.server.TruffleLSPTest
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final Builder = org.graalvm.polyglot.Context$Builder of org.graalvm.polyglot.Context
org.graalvm.tools.lsp.test.server.TruffleLSPTest$1