class jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter extends jdk.internal.net.http.common.SequentialScheduler$DeferredCompleter
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter
super_class: jdk.internal.net.http.common.SequentialScheduler$DeferredCompleter
{
final jdk.internal.net.http.common.SequentialScheduler this$0;
descriptor: Ljdk/internal/net/http/common/SequentialScheduler;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private void <init>(jdk.internal.net.http.common.SequentialScheduler);
descriptor: (Ljdk/internal/net/http/common/SequentialScheduler;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 // jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter this
0: .line 278
aload 0 /* this */
aload 1
putfield jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter.this$0:Ljdk/internal/net/http/common/SequentialScheduler;
aload 0 /* this */
invokespecial jdk.internal.net.http.common.SequentialScheduler$DeferredCompleter.<init>:()V
return
end local 0 // jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljdk/internal/net/http/common/SequentialScheduler$TryEndDeferredCompleter;
MethodParameters:
Name Flags
this$0 final
public void complete();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 // jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter this
0: .line 284
goto 3
start local 1 // int s
1: .line 286
StackMap locals: int
StackMap stack:
aload 0 /* this */
getfield jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter.this$0:Ljdk/internal/net/http/common/SequentialScheduler;
getfield jdk.internal.net.http.common.SequentialScheduler.state:Ljava/util/concurrent/atomic/AtomicInteger;
iload 1 /* s */
iload 1 /* s */
bipush -2
iand
invokevirtual java.util.concurrent.atomic.AtomicInteger.compareAndSet:(II)Z
ifeq 3
2: .line 287
return
end local 1 // int s
3: .line 284
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter.this$0:Ljdk/internal/net/http/common/SequentialScheduler;
getfield jdk.internal.net.http.common.SequentialScheduler.state:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
dup
istore 1 /* s */
start local 1 // int s
4: iconst_1
iand
ifne 1
5: .line 291
StackMap locals: int
StackMap stack:
iload 1 /* s */
iconst_1
iand
ifeq 7
6: .line 295
new java.lang.InternalError
dup
iload 1 /* s */
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
7: .line 297
StackMap locals:
StackMap stack:
iload 1 /* s */
iconst_4
if_icmpne 10
8: .line 298
aload 0 /* this */
getfield jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter.this$0:Ljdk/internal/net/http/common/SequentialScheduler;
getfield jdk.internal.net.http.common.SequentialScheduler.state:Ljava/util/concurrent/atomic/AtomicInteger;
iconst_4
bipush 16
invokevirtual java.util.concurrent.atomic.AtomicInteger.compareAndSet:(II)Z
ifeq 18
9: .line 299
return
10: .line 301
StackMap locals:
StackMap stack:
iload 1 /* s */
iconst_2
if_icmpne 13
11: .line 302
aload 0 /* this */
getfield jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter.this$0:Ljdk/internal/net/http/common/SequentialScheduler;
getfield jdk.internal.net.http.common.SequentialScheduler.state:Ljava/util/concurrent/atomic/AtomicInteger;
iconst_2
iconst_5
invokevirtual java.util.concurrent.atomic.AtomicInteger.compareAndSet:(II)Z
ifeq 18
12: .line 303
goto 20
13: .line 305
StackMap locals:
StackMap stack:
iload 1 /* s */
bipush 8
if_icmpne 15
14: .line 306
return
15: .line 307
StackMap locals:
StackMap stack:
iload 1 /* s */
bipush 16
if_icmpne 17
16: .line 308
new java.lang.IllegalStateException
dup
ldc "Duplicate completion"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
17: .line 311
StackMap locals:
StackMap stack:
new java.lang.InternalError
dup
iload 1 /* s */
invokestatic java.lang.String.valueOf:(I)Ljava/lang/String;
invokespecial java.lang.InternalError.<init>:(Ljava/lang/String;)V
athrow
18: .line 313
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter.this$0:Ljdk/internal/net/http/common/SequentialScheduler;
getfield jdk.internal.net.http.common.SequentialScheduler.state:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
istore 1 /* s */
19: .line 290
goto 5
20: .line 315
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter.this$0:Ljdk/internal/net/http/common/SequentialScheduler;
getfield jdk.internal.net.http.common.SequentialScheduler.restartableTask:Ljdk/internal/net/http/common/SequentialScheduler$RestartableTask;
aload 0 /* this */
getfield jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter.this$0:Ljdk/internal/net/http/common/SequentialScheduler;
getfield jdk.internal.net.http.common.SequentialScheduler.completer:Ljdk/internal/net/http/common/SequentialScheduler$DeferredCompleter;
invokeinterface jdk.internal.net.http.common.SequentialScheduler$RestartableTask.run:(Ljdk/internal/net/http/common/SequentialScheduler$DeferredCompleter;)V
end local 1 // int s
21: .line 282
goto 3
end local 0 // jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter this
LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Ljdk/internal/net/http/common/SequentialScheduler$TryEndDeferredCompleter;
1 3 1 s I
4 21 1 s I
}
SourceFile: "SequentialScheduler.java"
NestHost: jdk.internal.net.http.common.SequentialScheduler
InnerClasses:
public abstract DeferredCompleter = jdk.internal.net.http.common.SequentialScheduler$DeferredCompleter of jdk.internal.net.http.common.SequentialScheduler
public abstract RestartableTask = jdk.internal.net.http.common.SequentialScheduler$RestartableTask of jdk.internal.net.http.common.SequentialScheduler
private TryEndDeferredCompleter = jdk.internal.net.http.common.SequentialScheduler$TryEndDeferredCompleter of jdk.internal.net.http.common.SequentialScheduler