public class java.util.concurrent.ConcurrentSkipListMap<K, V> extends java.util.AbstractMap<K, V> implements java.util.concurrent.ConcurrentNavigableMap<K, V>, java.lang.Cloneable, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: java.util.concurrent.ConcurrentSkipListMap
super_class: java.util.AbstractMap
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -8627078645895051609
final java.util.Comparator<? super K> comparator;
descriptor: Ljava/util/Comparator;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Comparator<-TK;>;
private transient java.util.concurrent.ConcurrentSkipListMap$Index<K, V> head;
descriptor: Ljava/util/concurrent/ConcurrentSkipListMap$Index;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
private transient java.util.concurrent.atomic.LongAdder adder;
descriptor: Ljava/util/concurrent/atomic/LongAdder;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient java.util.concurrent.ConcurrentSkipListMap$KeySet<K, V> keySet;
descriptor: Ljava/util/concurrent/ConcurrentSkipListMap$KeySet;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/concurrent/ConcurrentSkipListMap$KeySet<TK;TV;>;
private transient java.util.concurrent.ConcurrentSkipListMap$Values<K, V> values;
descriptor: Ljava/util/concurrent/ConcurrentSkipListMap$Values;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/concurrent/ConcurrentSkipListMap$Values<TK;TV;>;
private transient java.util.concurrent.ConcurrentSkipListMap$EntrySet<K, V> entrySet;
descriptor: Ljava/util/concurrent/ConcurrentSkipListMap$EntrySet;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/concurrent/ConcurrentSkipListMap$EntrySet<TK;TV;>;
private transient java.util.concurrent.ConcurrentSkipListMap$SubMap<K, V> descendingMap;
descriptor: Ljava/util/concurrent/ConcurrentSkipListMap$SubMap;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/concurrent/ConcurrentSkipListMap$SubMap<TK;TV;>;
private static final int EQ;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int LT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int GT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final java.lang.invoke.VarHandle HEAD;
descriptor: Ljava/lang/invoke/VarHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.VarHandle ADDER;
descriptor: Ljava/lang/invoke/VarHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.VarHandle NEXT;
descriptor: Ljava/lang/invoke/VarHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.VarHandle VAL;
descriptor: Ljava/lang/invoke/VarHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.invoke.VarHandle RIGHT;
descriptor: Ljava/lang/invoke/VarHandle;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=1, args_size=0
0: invokestatic java.lang.invoke.MethodHandles.lookup:()Ljava/lang/invoke/MethodHandles$Lookup;
astore 0
start local 0 1: aload 0
ldc Ljava/util/concurrent/ConcurrentSkipListMap;
ldc "head"
2: ldc Ljava/util/concurrent/ConcurrentSkipListMap$Index;
3: invokevirtual java.lang.invoke.MethodHandles$Lookup.findVarHandle:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;
putstatic java.util.concurrent.ConcurrentSkipListMap.HEAD:Ljava/lang/invoke/VarHandle;
4: aload 0
ldc Ljava/util/concurrent/ConcurrentSkipListMap;
ldc "adder"
5: ldc Ljava/util/concurrent/atomic/LongAdder;
6: invokevirtual java.lang.invoke.MethodHandles$Lookup.findVarHandle:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;
putstatic java.util.concurrent.ConcurrentSkipListMap.ADDER:Ljava/lang/invoke/VarHandle;
7: aload 0
ldc Ljava/util/concurrent/ConcurrentSkipListMap$Node;
ldc "next"
ldc Ljava/util/concurrent/ConcurrentSkipListMap$Node;
invokevirtual java.lang.invoke.MethodHandles$Lookup.findVarHandle:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;
putstatic java.util.concurrent.ConcurrentSkipListMap.NEXT:Ljava/lang/invoke/VarHandle;
8: aload 0
ldc Ljava/util/concurrent/ConcurrentSkipListMap$Node;
ldc "val"
ldc Ljava/lang/Object;
invokevirtual java.lang.invoke.MethodHandles$Lookup.findVarHandle:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;
putstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
9: aload 0
ldc Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ldc "right"
ldc Ljava/util/concurrent/ConcurrentSkipListMap$Index;
invokevirtual java.lang.invoke.MethodHandles$Lookup.findVarHandle:(Ljava/lang/Class;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/invoke/VarHandle;
putstatic java.util.concurrent.ConcurrentSkipListMap.RIGHT:Ljava/lang/invoke/VarHandle;
end local 0 10: goto 13
StackMap locals:
StackMap stack: java.lang.ReflectiveOperationException
11: astore 0
start local 0 12: new java.lang.ExceptionInInitializerError
dup
aload 0
invokespecial java.lang.ExceptionInInitializerError.<init>:(Ljava/lang/Throwable;)V
athrow
end local 0 13: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
1 10 0 l Ljava/lang/invoke/MethodHandles$Lookup;
12 13 0 e Ljava/lang/ReflectiveOperationException;
Exception table:
from to target type
0 10 11 Class java.lang.ReflectiveOperationException
static int cpr(java.util.Comparator, java.lang.Object, java.lang.Object);
descriptor: (Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ifnull 1
aload 0
aload 1
aload 2
invokeinterface java.util.Comparator.compare:(Ljava/lang/Object;Ljava/lang/Object;)I
goto 2
StackMap locals:
StackMap stack:
1: aload 1
checkcast java.lang.Comparable
aload 2
invokeinterface java.lang.Comparable.compareTo:(Ljava/lang/Object;)I
StackMap locals:
StackMap stack: int
2: ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 c Ljava/util/Comparator;
0 3 1 x Ljava/lang/Object;
0 3 2 y Ljava/lang/Object;
MethodParameters:
Name Flags
c
x
y
final java.util.concurrent.ConcurrentSkipListMap$Node<K, V> baseHead();
descriptor: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=2, args_size=1
start local 0 0: invokestatic java.lang.invoke.VarHandle.acquireFence:()V
1: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 1
start local 1 2: ifnonnull 3
aconst_null
goto 4
StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
3: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$Node
4: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
2 5 1 h Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
Signature: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
static <K, V> void unlinkNode(java.util.concurrent.ConcurrentSkipListMap$Node<K, V>, java.util.concurrent.ConcurrentSkipListMap$Node<K, V>);
descriptor: (Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
flags: (0x0008) ACC_STATIC
Code:
stack=8, locals=4, args_size=2
start local 0 start local 1 0: aload 0
ifnull 11
aload 1
ifnull 11
1: StackMap locals:
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 2: ifnull 5
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
ifnonnull 5
3: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
start local 3 4: goto 10
end local 3 5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.NEXT:Ljava/lang/invoke/VarHandle;
aload 1
aload 2
6: new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aconst_null
aconst_null
aload 2
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
7: invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
8: ifeq 1
9: aload 2
astore 3
start local 3 10: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.NEXT:Ljava/lang/invoke/VarHandle;
aload 0
aload 1
aload 3
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
end local 3 end local 2 11: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
0 12 1 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
2 11 2 f Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 5 3 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
10 11 3 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;)V
MethodParameters:
Name Flags
b
n
private void addCount(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.adder:Ljava/util/concurrent/atomic/LongAdder;
dup
astore 3
start local 3 1: ifnonnull 3
2: getstatic java.util.concurrent.ConcurrentSkipListMap.ADDER:Ljava/lang/invoke/VarHandle;
aload 0
aconst_null
new java.util.concurrent.atomic.LongAdder
dup
invokespecial java.util.concurrent.atomic.LongAdder.<init>:()V
dup
astore 3
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/lang/Void;Ljava/util/concurrent/atomic/LongAdder;)Z
ifeq 0
3: StackMap locals: java.util.concurrent.atomic.LongAdder
StackMap stack:
aload 3
lload 1
invokevirtual java.util.concurrent.atomic.LongAdder.add:(J)V
4: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 5 1 c J
1 5 3 a Ljava/util/concurrent/atomic/LongAdder;
MethodParameters:
Name Flags
c
final long getAdderCount();
descriptor: ()J
flags: (0x0010) ACC_FINAL
Code:
stack=5, locals=4, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.adder:Ljava/util/concurrent/atomic/LongAdder;
dup
astore 1
start local 1 1: ifnonnull 3
2: getstatic java.util.concurrent.ConcurrentSkipListMap.ADDER:Ljava/lang/invoke/VarHandle;
aload 0
aconst_null
new java.util.concurrent.atomic.LongAdder
dup
invokespecial java.util.concurrent.atomic.LongAdder.<init>:()V
dup
astore 1
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/lang/Void;Ljava/util/concurrent/atomic/LongAdder;)Z
ifeq 0
3: StackMap locals: java.util.concurrent.atomic.LongAdder
StackMap stack:
aload 1
invokevirtual java.util.concurrent.atomic.LongAdder.sum:()J
dup2
lstore 2
start local 2 4: lconst_0
lcmp
ifgt 5
lconst_0
goto 6
StackMap locals: long
StackMap stack:
5: lload 2
StackMap locals:
StackMap stack: long
6: lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 7 1 a Ljava/util/concurrent/atomic/LongAdder;
4 7 2 c J
private java.util.concurrent.ConcurrentSkipListMap$Node<K, V> findPredecessor(, java.util.Comparator<? super K>);
descriptor: (Ljava/lang/Object;Ljava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=3
start local 0 start local 1 start local 2 0: invokestatic java.lang.invoke.VarHandle.acquireFence:()V
1: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 3
start local 3 2: ifnull 3
aload 1
ifnonnull 11
3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aconst_null
areturn
start local 4 4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 6
start local 6 5: ifnull 8
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 7
start local 7 6: ifnull 8
7: aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
ifnonnull 9
end local 7 8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.RIGHT:Ljava/lang/invoke/VarHandle;
aload 3
aload 4
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
goto 11
start local 7 9: StackMap locals: java.lang.Object
StackMap stack:
aload 2
aload 1
aload 7
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
ifle 13
10: aload 4
astore 3
end local 7 end local 6 end local 4 11: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 4
start local 4 12: ifnonnull 4
13: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 5
start local 5 14: ifnull 16
15: aload 5
astore 3
goto 17
16: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
areturn
end local 5 end local 4 17: StackMap locals:
StackMap stack:
goto 11
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 18 1 key Ljava/lang/Object;
0 18 2 cmp Ljava/util/Comparator<-TK;>;
2 18 3 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
4 11 4 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
12 17 4 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
14 17 5 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
5 11 6 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
6 8 7 k TK;
9 11 7 k TK;
Signature: (Ljava/lang/Object;Ljava/util/Comparator<-TK;>;)Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
MethodParameters:
Name Flags
key
cmp
private java.util.concurrent.ConcurrentSkipListMap$Node<K, V> findNode();
descriptor: (Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
astore 2
start local 2 3: goto 17
start local 3 4: StackMap locals: java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 4
start local 4 5: ifnonnull 7
6: goto 19
7: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 5
start local 5 8: ifnonnull 10
9: goto 17
10: StackMap locals: java.lang.Object
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
ifnonnull 12
11: aload 3
aload 4
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
goto 4
12: StackMap locals:
StackMap stack:
aload 2
aload 1
aload 5
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 6
start local 6 13: ifle 15
14: aload 4
astore 3
goto 4
15: StackMap locals: int
StackMap stack:
iload 6
ifne 19
16: aload 4
areturn
end local 6 end local 5 end local 4 end local 3 17: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator
StackMap stack:
aload 0
aload 1
aload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findPredecessor:(Ljava/lang/Object;Ljava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 18: ifnonnull 4
19: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 20 1 key Ljava/lang/Object;
3 20 2 cmp Ljava/util/Comparator<-TK;>;
4 17 3 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
18 20 3 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 17 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
8 17 5 k TK;
13 17 6 c I
Signature: (Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
MethodParameters:
Name Flags
key
private V doGet();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=12, args_size=2
start local 0 start local 1 0: invokestatic java.lang.invoke.VarHandle.acquireFence:()V
1: aload 1
ifnonnull 3
2: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
3: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
astore 3
start local 3 4: aconst_null
astore 4
start local 4 5: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 2
start local 2 6: ifnull 41
7: goto 20
start local 5 8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 7
start local 7 9: ifnull 13
aload 7
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 8
start local 8 10: ifnull 13
11: aload 7
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 9
start local 9 12: ifnonnull 14
end local 9 end local 8 13: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.RIGHT:Ljava/lang/invoke/VarHandle;
aload 2
aload 5
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
goto 20
start local 8 start local 9 14: StackMap locals: java.lang.Object java.lang.Object
StackMap stack:
aload 3
aload 1
aload 8
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 10
start local 10 15: ifle 17
16: aload 5
astore 2
goto 20
17: StackMap locals: int
StackMap stack:
iload 10
ifne 22
18: aload 9
astore 4
19: goto 41
end local 10 end local 9 end local 8 end local 7 end local 5 20: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.lang.Object
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 5
start local 5 21: ifnonnull 8
22: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 6
start local 6 23: ifnull 25
24: aload 6
astore 2
goto 40
25: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 7
start local 7 26: ifnull 41
27: goto 37
start local 8 28: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 8
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
astore 11
start local 11 29: aload 8
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 9
start local 9 30: ifnull 33
aload 11
ifnull 33
31: aload 3
aload 1
aload 11
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 10
start local 10 32: ifle 34
end local 10 33: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object top java.lang.Object
StackMap stack:
aload 8
astore 7
goto 37
start local 10 34: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int java.lang.Object
StackMap stack:
iload 10
ifne 41
35: aload 9
astore 4
36: goto 41
end local 11 end local 10 end local 9 end local 8 37: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 7
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 8
start local 8 38: ifnonnull 28
end local 8 39: goto 41
end local 7 end local 6 end local 5 40: StackMap locals:
StackMap stack:
goto 20
41: StackMap locals:
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 42 1 key Ljava/lang/Object;
6 42 2 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
4 42 3 cmp Ljava/util/Comparator<-TK;>;
5 42 4 result TV;
8 20 5 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
21 40 5 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
23 40 6 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
9 20 7 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
10 13 8 k TK;
14 20 8 k TK;
12 13 9 v TV;
14 20 9 v TV;
15 20 10 c I
26 40 7 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
28 37 8 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
38 39 8 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
30 37 9 v TV;
32 33 10 c I
34 37 10 c I
29 37 11 k TK;
Signature: (Ljava/lang/Object;)TV;
MethodParameters:
Name Flags
key
private V doPut(K, V, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=17, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
astore 4
start local 4 3: StackMap locals: java.util.Comparator
StackMap stack:
invokestatic java.lang.invoke.VarHandle.acquireFence:()V
4: iconst_0
istore 7
start local 7 5: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 5
start local 5 6: ifnonnull 13
7: new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aconst_null
aconst_null
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
astore 8
start local 8 8: new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 8
aconst_null
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Index.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
astore 5
9: getstatic java.util.concurrent.ConcurrentSkipListMap.HEAD:Ljava/lang/invoke/VarHandle;
aload 0
aconst_null
aload 5
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/lang/Void;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)Z
ifeq 10
aload 8
goto 11
StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index top int java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
10: aconst_null
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$Node
11: astore 6
end local 8 start local 6 12: goto 32
end local 6 13: StackMap locals:
StackMap stack:
aload 5
astore 8
start local 8 14: goto 22
start local 9 15: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 9
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 11
start local 11 16: ifnull 19
aload 11
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 12
start local 12 17: ifnull 19
18: aload 11
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
ifnonnull 20
end local 12 19: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index top int java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.RIGHT:Ljava/lang/invoke/VarHandle;
aload 8
aload 9
aload 9
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
goto 22
start local 12 20: StackMap locals: java.lang.Object
StackMap stack:
aload 4
aload 1
aload 12
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
ifle 24
21: aload 9
astore 8
end local 12 end local 11 end local 9 22: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index top int java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 8
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 9
start local 9 23: ifnonnull 15
24: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 8
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 10
start local 10 25: ifnull 29
26: iinc 7 1
27: aload 10
astore 8
28: goto 31
29: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 8
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 6
start local 6 30: goto 32
end local 10 end local 9 end local 6 31: StackMap locals:
StackMap stack:
goto 22
end local 8 start local 6 32: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Node int
StackMap stack:
aload 6
ifnull 3
33: aconst_null
astore 8
start local 8 34: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 9
start local 9 35: ifnonnull 40
36: aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
ifnonnull 38
37: aload 4
aload 1
aload 1
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
pop
38: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
iconst_m1
istore 13
start local 13 39: goto 54
end local 13 40: StackMap locals:
StackMap stack:
aload 9
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 11
start local 11 41: ifnonnull 43
42: goto 60
43: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Node int java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node top java.lang.Object
StackMap stack:
aload 9
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 12
start local 12 44: ifnonnull 48
45: aload 6
aload 9
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
46: iconst_1
istore 13
start local 13 47: goto 54
end local 13 48: StackMap locals: java.lang.Object
StackMap stack:
aload 4
aload 1
aload 11
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 13
start local 13 49: ifle 51
50: aload 9
astore 6
goto 54
51: StackMap locals: int
StackMap stack:
iload 13
ifne 54
52: iload 3
ifne 53
getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 9
aload 12
aload 2
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 54
53: StackMap locals:
StackMap stack:
aload 12
areturn
end local 12 end local 11 54: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Node int java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node top top top int
StackMap stack:
iload 13
ifge 34
55: getstatic java.util.concurrent.ConcurrentSkipListMap.NEXT:Ljava/lang/invoke/VarHandle;
aload 6
aload 9
56: new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aload 1
aload 2
aload 9
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
dup
astore 10
start local 10 57: invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
58: ifeq 34
59: aload 10
astore 8
end local 13 end local 10 end local 9 60: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Node int java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 8
ifnull 3
61: invokestatic java.util.concurrent.ThreadLocalRandom.nextSecondarySeed:()I
istore 9
start local 9 62: iload 9
iconst_3
iand
ifne 79
63: invokestatic java.util.concurrent.ThreadLocalRandom.nextSecondarySeed:()I
istore 10
start local 10 64: iload 10
i2l
bipush 32
lshl
iload 9
i2l
ldc 4294967295
land
lor
lstore 11
start local 11 65: iload 7
istore 13
start local 13 66: aconst_null
astore 14
start local 14 67: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Node int java.util.concurrent.ConcurrentSkipListMap$Node int int long int java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 8
aload 14
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Index.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
astore 14
68: lload 11
lconst_0
lcmp
ifge 72
iinc 13 -1
iload 13
ifge 70
69: goto 72
70: StackMap locals:
StackMap stack:
lload 11
iconst_1
lshl
lstore 11
71: goto 67
72: StackMap locals:
StackMap stack:
aload 5
iload 13
aload 14
aload 4
invokestatic java.util.concurrent.ConcurrentSkipListMap.addIndices:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;ILjava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/Comparator;)Z
ifeq 77
iload 13
ifge 77
73: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
aload 5
if_acmpne 77
74: new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 8
aload 14
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Index.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
astore 15
start local 15 75: new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
aload 5
aload 15
invokespecial java.util.concurrent.ConcurrentSkipListMap$Index.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
astore 16
start local 16 76: getstatic java.util.concurrent.ConcurrentSkipListMap.HEAD:Ljava/lang/invoke/VarHandle;
aload 0
aload 5
aload 16
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
end local 16 end local 15 77: StackMap locals:
StackMap stack:
aload 8
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
ifnonnull 79
78: aload 0
aload 1
aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findPredecessor:(Ljava/lang/Object;Ljava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
pop
end local 14 end local 13 end local 11 end local 10 79: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Node int java.util.concurrent.ConcurrentSkipListMap$Node int
StackMap stack:
aload 0
lconst_1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.addCount:(J)V
80: aconst_null
areturn
end local 9 end local 8 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 81 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 81 1 key TK;
0 81 2 value TV;
0 81 3 onlyIfAbsent Z
3 81 4 cmp Ljava/util/Comparator<-TK;>;
6 81 5 h Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
12 13 6 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
30 31 6 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
32 81 6 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 81 7 levels I
8 12 8 base Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
14 32 8 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
15 22 9 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
23 31 9 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
25 31 10 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
16 22 11 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
17 19 12 k TK;
20 22 12 k TK;
34 81 8 z Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
35 60 9 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
57 60 10 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
41 54 11 k TK;
44 54 12 v TV;
39 40 13 c I
47 48 13 c I
49 60 13 c I
62 81 9 lr I
64 79 10 hr I
65 79 11 rnd J
66 79 13 skips I
67 79 14 x Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
75 77 15 hx Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
76 77 16 nh Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
Signature: (TK;TV;Z)TV;
MethodParameters:
Name Flags
key
value
onlyIfAbsent
static <K, V> boolean addIndices(java.util.concurrent.ConcurrentSkipListMap$Index<K, V>, int, java.util.concurrent.ConcurrentSkipListMap$Index<K, V>, java.util.Comparator<? super K>);
descriptor: (Ljava/util/concurrent/ConcurrentSkipListMap$Index;ILjava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/Comparator;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=12, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
ifnull 34
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 4
start local 4 1: ifnull 34
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 5
start local 5 2: ifnull 34
3: aload 0
ifnull 34
4: iconst_0
istore 6
start local 6 5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 7
start local 7 6: ifnull 19
7: aload 7
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 10
start local 10 8: ifnull 11
aload 10
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 11
start local 11 9: ifnull 11
10: aload 10
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
ifnonnull 14
end local 11 11: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index int java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Index top top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.RIGHT:Ljava/lang/invoke/VarHandle;
aload 0
aload 7
aload 7
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
12: iconst_0
istore 9
start local 9 13: goto 20
end local 9 start local 11 14: StackMap locals: java.lang.Object
StackMap stack:
aload 3
aload 5
aload 11
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 9
start local 9 15: ifle 17
16: aload 7
astore 0
goto 20
17: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index int java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Index top int java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object
StackMap stack:
iload 9
ifne 20
18: goto 34
end local 11 end local 10 end local 9 19: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index int java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
iconst_m1
istore 9
start local 9 20: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index int java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Index top int
StackMap stack:
iload 9
ifge 5
21: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 8
start local 8 22: ifnull 26
iload 1
ifle 26
23: iinc 1 -1
24: aload 8
astore 0
25: goto 5
26: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index int java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index int
StackMap stack:
aload 8
ifnull 29
iload 6
ifne 29
27: aload 8
iconst_0
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
aload 3
invokestatic java.util.concurrent.ConcurrentSkipListMap.addIndices:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;ILjava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/Comparator;)Z
ifne 29
28: goto 34
29: StackMap locals:
StackMap stack:
aload 2
aload 7
putfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
30: getstatic java.util.concurrent.ConcurrentSkipListMap.RIGHT:Ljava/lang/invoke/VarHandle;
aload 0
aload 7
aload 2
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)Z
ifeq 32
31: iconst_1
ireturn
32: StackMap locals:
StackMap stack:
iconst_1
istore 6
end local 9 end local 8 end local 7 33: goto 5
end local 6 end local 5 end local 4 34: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index int java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator
StackMap stack:
iconst_0
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
0 35 1 skips I
0 35 2 x Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
0 35 3 cmp Ljava/util/Comparator<-TK;>;
1 34 4 z Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
2 34 5 key TK;
5 34 6 retrying Z
6 33 7 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
22 33 8 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
13 14 9 c I
15 19 9 c I
20 33 9 c I
8 19 10 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
9 11 11 k TK;
14 19 11 k TK;
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;ILjava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;Ljava/util/Comparator<-TK;>;)Z
MethodParameters:
Name Flags
q
skips
x
cmp
final V doRemove(, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
astore 3
start local 3 3: aconst_null
astore 4
start local 4 4: goto 24
start local 5 5: StackMap locals: java.util.Comparator java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 6
start local 6 6: ifnonnull 8
7: goto 27
8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 7
start local 7 9: ifnonnull 11
10: goto 24
11: StackMap locals: java.lang.Object
StackMap stack:
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 8
start local 8 12: ifnonnull 14
13: aload 5
aload 6
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
goto 5
14: StackMap locals: java.lang.Object
StackMap stack:
aload 3
aload 1
aload 7
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 9
start local 9 15: ifle 17
16: aload 6
astore 5
goto 5
17: StackMap locals: int
StackMap stack:
iload 9
ifge 19
18: goto 27
19: StackMap locals:
StackMap stack:
aload 2
ifnull 21
aload 2
aload 8
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 21
20: goto 27
21: StackMap locals:
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 6
aload 8
aconst_null
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Void;)Z
ifeq 5
22: aload 8
astore 4
23: aload 5
aload 6
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
end local 9 end local 8 end local 7 end local 6 end local 5 24: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object java.util.Comparator java.lang.Object
StackMap stack:
aload 0
aload 1
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findPredecessor:(Ljava/lang/Object;Ljava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 5
start local 5 25: ifnull 27
26: aload 4
ifnull 5
27: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
ifnull 30
28: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.tryReduceLevel:()V
29: aload 0
ldc -1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.addCount:(J)V
30: StackMap locals:
StackMap stack:
aload 4
areturn
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 31 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 31 1 key Ljava/lang/Object;
0 31 2 value Ljava/lang/Object;
3 31 3 cmp Ljava/util/Comparator<-TK;>;
4 31 4 result TV;
5 24 5 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
25 31 5 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
6 24 6 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
9 24 7 k TK;
12 24 8 v TV;
15 24 9 c I
Signature: (Ljava/lang/Object;Ljava/lang/Object;)TV;
MethodParameters:
Name Flags
key
value
private void tryReduceLevel();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 1
start local 1 1: ifnull 9
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnonnull 9
2: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 2
start local 2 3: ifnull 9
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnonnull 9
4: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 3
start local 3 5: ifnull 9
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnonnull 9
6: getstatic java.util.concurrent.ConcurrentSkipListMap.HEAD:Ljava/lang/invoke/VarHandle;
aload 0
aload 1
aload 2
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)Z
ifeq 9
7: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnull 9
8: getstatic java.util.concurrent.ConcurrentSkipListMap.HEAD:Ljava/lang/invoke/VarHandle;
aload 0
aload 2
aload 1
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
end local 3 end local 2 9: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 10 1 h Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
3 9 2 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
5 9 3 e Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
final java.util.concurrent.ConcurrentSkipListMap$Node<K, V> findFirst();
descriptor: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
flags: (0x0010) ACC_FINAL
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 1
start local 1 1: ifnull 8
2: goto 6
start local 2 3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
ifnonnull 5
4: aload 1
aload 2
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
goto 6
5: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 6: StackMap locals:
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 7: ifnonnull 3
end local 2 8: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 9 1 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
3 6 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
7 8 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
Signature: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
final java.util.AbstractMap$SimpleImmutableEntry<K, V> findFirstEntry();
descriptor: ()Ljava/util/AbstractMap$SimpleImmutableEntry;
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 1
start local 1 1: ifnull 9
2: goto 7
start local 2 3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 3
start local 3 4: ifnonnull 6
5: aload 1
aload 2
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
goto 7
6: StackMap locals: java.lang.Object
StackMap stack:
new java.util.AbstractMap$SimpleImmutableEntry
dup
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
aload 3
invokespecial java.util.AbstractMap$SimpleImmutableEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
areturn
end local 3 end local 2 7: StackMap locals:
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 8: ifnonnull 3
end local 2 9: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 10 1 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
3 7 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
8 9 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 7 3 v TV;
Signature: ()Ljava/util/AbstractMap$SimpleImmutableEntry<TK;TV;>;
private java.util.AbstractMap$SimpleImmutableEntry<K, V> doRemoveFirstEntry();
descriptor: ()Ljava/util/AbstractMap$SimpleImmutableEntry;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 1
start local 1 1: ifnull 14
2: goto 12
start local 2 3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 3
start local 3 4: ifnull 5
getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 2
aload 3
aconst_null
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Void;)Z
ifeq 12
5: StackMap locals: java.lang.Object
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
astore 4
start local 4 6: aload 1
aload 2
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
7: aload 3
ifnull 12
8: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.tryReduceLevel:()V
9: aload 0
aload 4
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findPredecessor:(Ljava/lang/Object;Ljava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
pop
10: aload 0
ldc -1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.addCount:(J)V
11: new java.util.AbstractMap$SimpleImmutableEntry
dup
aload 4
aload 3
invokespecial java.util.AbstractMap$SimpleImmutableEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
areturn
end local 4 end local 3 end local 2 12: StackMap locals:
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 13: ifnonnull 3
end local 2 14: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 15 1 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
3 12 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
13 14 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 12 3 v TV;
6 12 4 k TK;
Signature: ()Ljava/util/AbstractMap$SimpleImmutableEntry<TK;TV;>;
final java.util.concurrent.ConcurrentSkipListMap$Node<K, V> findLast();
descriptor: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=6, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
invokestatic java.lang.invoke.VarHandle.acquireFence:()V
1: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 1
start local 1 2: ifnonnull 8
3: goto 28
start local 3 4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index top java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 5
start local 5 5: ifnull 6
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
ifnonnull 7
6: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index top java.util.concurrent.ConcurrentSkipListMap$Index top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.RIGHT:Ljava/lang/invoke/VarHandle;
aload 1
aload 3
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
goto 8
7: StackMap locals:
StackMap stack:
aload 3
astore 1
end local 5 end local 3 8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 3
start local 3 9: ifnonnull 4
10: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 4
start local 4 11: ifnull 13
12: aload 4
astore 1
goto 15
13: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index top java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 14: goto 16
end local 4 end local 3 end local 2 15: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
goto 8
start local 2 16: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
ifnull 0
17: StackMap locals:
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 18: ifnonnull 22
19: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
ifnonnull 21
20: goto 28
21: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
areturn
22: StackMap locals:
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
ifnonnull 24
23: goto 0
24: StackMap locals:
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
ifnonnull 26
25: aload 2
aload 3
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
goto 17
26: StackMap locals:
StackMap stack:
aload 3
astore 2
end local 3 27: goto 17
end local 2 end local 1 28: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
2 28 1 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
14 15 2 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
16 28 2 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 8 3 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
9 15 3 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
11 15 4 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
5 8 5 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
18 27 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
Signature: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
final java.util.AbstractMap$SimpleImmutableEntry<K, V> findLastEntry();
descriptor: ()Ljava/util/AbstractMap$SimpleImmutableEntry;
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=3, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findLast:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 1
start local 1 1: ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 2
start local 2 4: ifnull 0
5: new java.util.AbstractMap$SimpleImmutableEntry
dup
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
aload 2
invokespecial java.util.AbstractMap$SimpleImmutableEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 6 1 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 6 2 v TV;
Signature: ()Ljava/util/AbstractMap$SimpleImmutableEntry<TK;TV;>;
private java.util.Map$Entry<K, V> doRemoveLastEntry();
descriptor: ()Ljava/util/Map$Entry;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
invokestatic java.lang.invoke.VarHandle.acquireFence:()V
1: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 1
start local 1 2: ifnonnull 9
3: goto 36
start local 4 4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index top top java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 5
start local 5 5: ifnull 6
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
ifnonnull 7
6: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.RIGHT:Ljava/lang/invoke/VarHandle;
aload 1
aload 4
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
goto 9
7: StackMap locals:
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
ifnull 11
8: aload 4
astore 1
end local 5 end local 4 9: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 4
start local 4 10: ifnonnull 4
11: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index top top java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 3
start local 3 12: ifnull 14
13: aload 3
astore 1
goto 16
14: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index top java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 15: goto 17
end local 4 end local 3 end local 2 16: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
goto 9
start local 2 17: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
ifnull 0
18: StackMap locals:
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 19: ifnonnull 22
20: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
ifnonnull 0
21: goto 36
22: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 4
start local 4 23: ifnonnull 25
24: goto 0
25: StackMap locals: java.lang.Object
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 5
start local 5 26: ifnonnull 28
27: aload 2
aload 3
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
goto 18
28: StackMap locals: java.lang.Object
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
ifnull 30
29: aload 3
astore 2
goto 18
30: StackMap locals:
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 3
aload 5
aconst_null
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Void;)Z
ifeq 18
31: aload 2
aload 3
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
32: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.tryReduceLevel:()V
33: aload 0
aload 4
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findPredecessor:(Ljava/lang/Object;Ljava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
pop
34: aload 0
ldc -1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.addCount:(J)V
35: new java.util.AbstractMap$SimpleImmutableEntry
dup
aload 4
aload 5
invokespecial java.util.AbstractMap$SimpleImmutableEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 36: StackMap locals: java.util.concurrent.ConcurrentSkipListMap
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 37 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
2 36 1 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
15 16 2 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
17 36 2 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
12 16 3 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
4 9 4 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
10 16 4 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
5 9 5 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
19 36 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
23 36 4 k TK;
26 36 5 v TV;
Signature: ()Ljava/util/Map$Entry<TK;TV;>;
final java.util.concurrent.ConcurrentSkipListMap$Node<K, V> findNear(K, int, java.util.Comparator<? super K>);
descriptor: (Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
flags: (0x0010) ACC_FINAL
Code:
stack=3, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findPredecessor:(Ljava/lang/Object;Ljava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 5
start local 5 3: ifnonnull 6
4: aconst_null
astore 4
start local 4 5: goto 29
end local 4 6: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object int java.util.Comparator top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 6
start local 6 7: ifnonnull 12
8: iload 2
iconst_2
iand
ifeq 9
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
ifnull 9
aload 5
goto 10
StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
9: aconst_null
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$Node
10: astore 4
start local 4 11: goto 29
end local 4 12: StackMap locals:
StackMap stack:
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 7
start local 7 13: ifnonnull 15
14: goto 2
15: StackMap locals: java.lang.Object
StackMap stack:
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
ifnonnull 17
16: aload 5
aload 6
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
goto 6
17: StackMap locals:
StackMap stack:
aload 3
aload 1
aload 7
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 8
start local 8 18: ifne 19
iload 2
iconst_1
iand
ifne 20
19: StackMap locals: int
StackMap stack:
iload 8
ifge 22
iload 2
iconst_2
iand
ifne 22
20: StackMap locals:
StackMap stack:
aload 6
astore 4
start local 4 21: goto 29
end local 4 22: StackMap locals:
StackMap stack:
iload 8
ifgt 27
iload 2
iconst_2
iand
ifeq 27
23: aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
ifnull 24
aload 5
goto 25
StackMap locals:
StackMap stack:
24: aconst_null
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$Node
25: astore 4
start local 4 26: goto 29
end local 4 27: StackMap locals:
StackMap stack:
aload 6
astore 5
end local 8 end local 7 end local 6 28: goto 6
end local 5 start local 4 29: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 30 1 key TK;
0 30 2 rel I
0 30 3 cmp Ljava/util/Comparator<-TK;>;
5 6 4 result Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
11 12 4 result Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
21 22 4 result Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
26 27 4 result Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
29 30 4 result Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
3 29 5 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
7 28 6 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
13 28 7 k TK;
18 28 8 c I
Signature: (TK;ILjava/util/Comparator<-TK;>;)Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
MethodParameters:
Name Flags
key
rel
cmp
final java.util.AbstractMap$SimpleImmutableEntry<K, V> findNearEntry(K, int, java.util.Comparator<? super K>);
descriptor: (Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/AbstractMap$SimpleImmutableEntry;
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNear:(Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 4
start local 4 1: ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 5
start local 5 4: ifnull 0
5: new java.util.AbstractMap$SimpleImmutableEntry
dup
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
aload 5
invokespecial java.util.AbstractMap$SimpleImmutableEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
areturn
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 6 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 6 1 key TK;
0 6 2 rel I
0 6 3 cmp Ljava/util/Comparator<-TK;>;
1 6 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 6 5 v TV;
Signature: (TK;ILjava/util/Comparator<-TK;>;)Ljava/util/AbstractMap$SimpleImmutableEntry<TK;TV;>;
MethodParameters:
Name Flags
key
rel
cmp
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.util.AbstractMap.<init>:()V
1: aload 0
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
public void <init>(java.util.Comparator<? super K>);
descriptor: (Ljava/util/Comparator;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.util.AbstractMap.<init>:()V
1: aload 0
aload 1
putfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 3 1 comparator Ljava/util/Comparator<-TK;>;
Signature: (Ljava/util/Comparator<-TK;>;)V
MethodParameters:
Name Flags
comparator
public void <init>(java.util.Map<? extends K, ? extends V>);
descriptor: (Ljava/util/Map;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.util.AbstractMap.<init>:()V
1: aload 0
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
2: aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.putAll:(Ljava/util/Map;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 4 1 m Ljava/util/Map<+TK;+TV;>;
Signature: (Ljava/util/Map<+TK;+TV;>;)V
MethodParameters:
Name Flags
m
public void <init>(java.util.SortedMap<K, ? extends V>);
descriptor: (Ljava/util/SortedMap;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.util.AbstractMap.<init>:()V
1: aload 0
aload 1
invokeinterface java.util.SortedMap.comparator:()Ljava/util/Comparator;
putfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
2: aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.buildFromSorted:(Ljava/util/SortedMap;)V
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 4 1 m Ljava/util/SortedMap<TK;+TV;>;
Signature: (Ljava/util/SortedMap<TK;+TV;>;)V
MethodParameters:
Name Flags
m
public java.util.concurrent.ConcurrentSkipListMap<K, V> clone();
descriptor: ()Ljava/util/concurrent/ConcurrentSkipListMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokespecial java.util.AbstractMap.clone:()Ljava/lang/Object;
checkcast java.util.concurrent.ConcurrentSkipListMap
1: astore 1
start local 1 2: aload 1
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.keySet:Ljava/util/concurrent/ConcurrentSkipListMap$KeySet;
3: aload 1
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.entrySet:Ljava/util/concurrent/ConcurrentSkipListMap$EntrySet;
4: aload 1
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.values:Ljava/util/concurrent/ConcurrentSkipListMap$Values;
5: aload 1
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.descendingMap:Ljava/util/concurrent/ConcurrentSkipListMap$SubMap;
6: aload 1
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.adder:Ljava/util/concurrent/atomic/LongAdder;
7: aload 1
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.buildFromSorted:(Ljava/util/SortedMap;)V
8: aload 1
9: areturn
end local 1 10: StackMap locals:
StackMap stack: java.lang.CloneNotSupportedException
pop
11: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
2 10 1 clone Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Exception table:
from to target type
0 9 10 Class java.lang.CloneNotSupportedException
Signature: ()Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
private void buildFromSorted(java.util.SortedMap<K, ? extends V>);
descriptor: (Ljava/util/SortedMap;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=17, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.SortedMap.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
3: astore 2
start local 2 4: bipush 64
anewarray java.util.concurrent.ConcurrentSkipListMap$Index
astore 3
start local 3 5: new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aconst_null
aconst_null
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
astore 4
start local 4 6: aload 3
iconst_0
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 4
aconst_null
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Index.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
dup_x2
aastore
astore 5
start local 5 7: lconst_0
lstore 6
start local 6 8: goto 26
9: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.SortedMap java.util.Iterator java.util.concurrent.ConcurrentSkipListMap$Index[] java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Index long
StackMap stack:
aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 8
start local 8 10: aload 8
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
astore 9
start local 9 11: aload 8
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
astore 10
start local 10 12: aload 9
ifnull 13
aload 10
ifnonnull 14
13: StackMap locals: java.util.Map$Entry java.lang.Object java.lang.Object
StackMap stack:
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
14: StackMap locals:
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aload 9
aload 10
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
astore 11
start local 11 15: aload 4
aload 11
dup_x1
putfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 4
16: lload 6
lconst_1
ladd
dup2
lstore 6
ldc 3
land
lconst_0
lcmp
ifne 26
17: lload 6
iconst_2
lushr
lstore 12
start local 12 18: iconst_0
istore 14
start local 14 19: aconst_null
astore 15
start local 15 20: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.SortedMap java.util.Iterator java.util.concurrent.ConcurrentSkipListMap$Index[] java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Index long java.util.Map$Entry java.lang.Object java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Node long int java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 11
aload 15
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Index.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
astore 15
21: aload 3
iload 14
aaload
dup
astore 16
start local 16 22: ifnonnull 24
23: aload 3
iload 14
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
aload 5
aload 15
invokespecial java.util.concurrent.ConcurrentSkipListMap$Index.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
dup
astore 5
aastore
goto 25
24: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 3
iload 14
aload 16
aload 15
dup_x1
putfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
aastore
25: StackMap locals:
StackMap stack:
iinc 14 1
iload 14
aload 3
arraylength
if_icmpge 26
lload 12
iconst_1
lushr
dup2
lstore 12
lconst_1
land
lconst_0
lcmp
ifne 20
end local 16 end local 15 end local 14 end local 12 end local 11 end local 10 end local 9 end local 8 26: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.SortedMap java.util.Iterator java.util.concurrent.ConcurrentSkipListMap$Index[] java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Index long
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
27: lload 6
lconst_0
lcmp
ifeq 32
28: invokestatic java.lang.invoke.VarHandle.releaseFence:()V
29: aload 0
lload 6
invokevirtual java.util.concurrent.ConcurrentSkipListMap.addCount:(J)V
30: aload 0
aload 5
putfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
31: invokestatic java.lang.invoke.VarHandle.fullFence:()V
32: StackMap locals:
StackMap stack:
return
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 33 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 33 1 map Ljava/util/SortedMap<TK;+TV;>;
4 33 2 it Ljava/util/Iterator<+Ljava/util/Map$Entry<+TK;+TV;>;>;
5 33 3 preds [Ljava/util/concurrent/ConcurrentSkipListMap$Index;
6 33 4 bp Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
7 33 5 h Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
8 33 6 count J
10 26 8 e Ljava/util/Map$Entry<+TK;+TV;>;
11 26 9 k TK;
12 26 10 v TV;
15 26 11 z Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
18 26 12 m J
19 26 14 i I
20 26 15 idx Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
22 26 16 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
Signature: (Ljava/util/SortedMap<TK;+TV;>;)V
MethodParameters:
Name Flags
map
private void writeObject(java.io.ObjectOutputStream);
descriptor: (Ljava/io/ObjectOutputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
1: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 2: ifnull 11
3: goto 9
start local 3 4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 4
start local 4 5: ifnull 8
6: aload 1
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
7: aload 1
aload 4
invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
8: StackMap locals: java.lang.Object
StackMap stack:
aload 3
astore 2
end local 4 end local 3 9: StackMap locals:
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 10: ifnonnull 4
end local 3 11: StackMap locals:
StackMap stack:
aload 1
aconst_null
invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 13 1 s Ljava/io/ObjectOutputStream;
2 13 2 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 9 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
10 11 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 9 4 v TV;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
s
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=7, locals=17, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
1: bipush 64
anewarray java.util.concurrent.ConcurrentSkipListMap$Index
astore 2
start local 2 2: new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aconst_null
aconst_null
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
astore 3
start local 3 3: aload 2
iconst_0
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 3
aconst_null
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Index.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
dup_x2
aastore
astore 4
start local 4 4: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
astore 5
start local 5 5: aconst_null
astore 6
start local 6 6: lconst_0
lstore 7
start local 7 7: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.io.ObjectInputStream java.util.concurrent.ConcurrentSkipListMap$Index[] java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.lang.Object long
StackMap stack:
aload 1
invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
astore 9
start local 9 8: aload 9
ifnonnull 10
9: goto 29
10: StackMap locals: java.lang.Object
StackMap stack:
aload 1
invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
astore 10
start local 10 11: aload 10
ifnonnull 13
12: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
13: StackMap locals: java.lang.Object
StackMap stack:
aload 6
ifnull 15
aload 5
aload 6
aload 9
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
ifle 15
14: new java.lang.IllegalStateException
dup
ldc "out of order"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals:
StackMap stack:
aload 9
astore 6
16: new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aload 9
aload 10
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
astore 11
start local 11 17: aload 3
aload 11
dup_x1
putfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
18: lload 7
lconst_1
ladd
dup2
lstore 7
ldc 3
land
lconst_0
lcmp
ifne 7
19: lload 7
iconst_2
lushr
lstore 12
start local 12 20: iconst_0
istore 14
start local 14 21: aconst_null
astore 15
start local 15 22: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.io.ObjectInputStream java.util.concurrent.ConcurrentSkipListMap$Index[] java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.lang.Object long java.lang.Object java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Node long int java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 11
aload 15
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Index.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
astore 15
23: aload 2
iload 14
aaload
dup
astore 16
start local 16 24: ifnonnull 26
25: aload 2
iload 14
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
aload 4
aload 15
invokespecial java.util.concurrent.ConcurrentSkipListMap$Index.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
dup
astore 4
aastore
goto 27
26: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 2
iload 14
aload 16
aload 15
dup_x1
putfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
aastore
27: StackMap locals:
StackMap stack:
iinc 14 1
iload 14
aload 2
arraylength
if_icmpge 7
lload 12
iconst_1
lushr
dup2
lstore 12
lconst_1
land
lconst_0
lcmp
ifne 22
end local 16 end local 15 end local 14 end local 12 end local 11 end local 10 end local 9 28: goto 7
29: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.io.ObjectInputStream java.util.concurrent.ConcurrentSkipListMap$Index[] java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Index java.util.Comparator java.lang.Object long
StackMap stack:
lload 7
lconst_0
lcmp
ifeq 34
30: invokestatic java.lang.invoke.VarHandle.releaseFence:()V
31: aload 0
lload 7
invokevirtual java.util.concurrent.ConcurrentSkipListMap.addCount:(J)V
32: aload 0
aload 4
putfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
33: invokestatic java.lang.invoke.VarHandle.fullFence:()V
34: StackMap locals:
StackMap stack:
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 35 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 35 1 s Ljava/io/ObjectInputStream;
2 35 2 preds [Ljava/util/concurrent/ConcurrentSkipListMap$Index;
3 35 3 bp Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 35 4 h Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
5 35 5 cmp Ljava/util/Comparator<-TK;>;
6 35 6 prevKey TK;
7 35 7 count J
8 28 9 k TK;
11 28 10 v TV;
17 28 11 z Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
20 28 12 m J
21 28 14 i I
22 28 15 idx Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
24 28 16 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
s final
public boolean containsKey(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doGet:(Ljava/lang/Object;)Ljava/lang/Object;
ifnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 2 1 key Ljava/lang/Object;
MethodParameters:
Name Flags
key
public V get();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doGet:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 1 1 key Ljava/lang/Object;
Signature: (Ljava/lang/Object;)TV;
MethodParameters:
Name Flags
key
public V getOrDefault(, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doGet:(Ljava/lang/Object;)Ljava/lang/Object;
dup
astore 3
start local 3 1: ifnonnull 2
aload 2
goto 3
StackMap locals: java.lang.Object
StackMap stack:
2: aload 3
StackMap locals:
StackMap stack: java.lang.Object
3: areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 4 1 key Ljava/lang/Object;
0 4 2 defaultValue TV;
1 4 3 v TV;
Signature: (Ljava/lang/Object;TV;)TV;
MethodParameters:
Name Flags
key
defaultValue
public V put(K, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
iconst_0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doPut:(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 3 1 key TK;
0 3 2 value TV;
Signature: (TK;TV;)TV;
MethodParameters:
Name Flags
key
value
public V remove();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
aconst_null
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doRemove:(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 Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 1 1 key Ljava/lang/Object;
Signature: (Ljava/lang/Object;)TV;
MethodParameters:
Name Flags
key
public boolean containsValue(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 3: ifnull 11
4: goto 9
start local 3 5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 4
start local 4 6: ifnull 8
aload 1
aload 4
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 8
7: iconst_1
ireturn
8: StackMap locals: java.lang.Object
StackMap stack:
aload 3
astore 2
end local 4 end local 3 9: StackMap locals:
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 10: ifnonnull 5
end local 3 11: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 12 1 value Ljava/lang/Object;
3 12 2 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 9 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
10 11 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
6 9 4 v TV;
MethodParameters:
Name Flags
value
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
ifnonnull 1
iconst_0
goto 5
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.getAdderCount:()J
dup2
lstore 1
start local 1 2: ldc 2147483647
lcmp
iflt 4
3: ldc 2147483647
goto 5
StackMap locals: long
StackMap stack:
4: lload 1
l2i
end local 1 5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap
StackMap stack: int
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
2 5 1 c J
public boolean isEmpty();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findFirst:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
ifnonnull 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=9, args_size=1
start local 0 0: invokestatic java.lang.invoke.VarHandle.acquireFence:()V
1: goto 23
start local 1 2: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 2
start local 2 3: ifnull 5
4: getstatic java.util.concurrent.ConcurrentSkipListMap.RIGHT:Ljava/lang/invoke/VarHandle;
aload 1
aload 2
aconst_null
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/lang/Void;)V
goto 23
5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 3
start local 3 6: ifnull 8
7: getstatic java.util.concurrent.ConcurrentSkipListMap.HEAD:Ljava/lang/invoke/VarHandle;
aload 0
aload 1
aload 3
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)V
goto 23
8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
lconst_0
lstore 5
start local 5 9: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 4
start local 4 10: ifnull 21
11: goto 19
start local 7 12: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node long java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 7
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 8
start local 8 13: ifnull 17
14: getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 7
aload 8
aconst_null
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Void;)Z
ifeq 17
15: lload 5
lconst_1
lsub
lstore 5
16: aconst_null
astore 8
17: StackMap locals: java.lang.Object
StackMap stack:
aload 8
ifnonnull 19
18: aload 4
aload 7
invokestatic java.util.concurrent.ConcurrentSkipListMap.unlinkNode:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
end local 8 end local 7 19: StackMap locals:
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 7
start local 7 20: ifnonnull 12
end local 7 21: StackMap locals:
StackMap stack:
lload 5
lconst_0
lcmp
ifeq 25
22: aload 0
lload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap.addCount:(J)V
end local 5 end local 4 end local 3 end local 2 end local 1 23: StackMap locals: java.util.concurrent.ConcurrentSkipListMap
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 1
start local 1 24: ifnonnull 2
25: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
2 23 1 h Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
24 26 1 h Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
3 23 2 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
6 23 3 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
10 23 4 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
9 23 5 count J
12 19 7 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
20 21 7 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
13 19 8 v TV;
public V computeIfAbsent(K, java.util.function.Function<? super K, ? extends V>);
descriptor: (Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 1
aload 2
ifnonnull 2
1: StackMap locals:
StackMap stack:
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doGet:(Ljava/lang/Object;)Ljava/lang/Object;
dup
astore 3
start local 3 3: ifnonnull 10
4: aload 2
aload 1
invokeinterface java.util.function.Function.apply:(Ljava/lang/Object;)Ljava/lang/Object;
dup
astore 5
start local 5 5: ifnull 10
6: aload 0
aload 1
aload 5
iconst_1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doPut:(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
dup
astore 4
start local 4 7: ifnonnull 8
aload 5
goto 9
StackMap locals: java.lang.Object java.lang.Object java.lang.Object
StackMap stack:
8: aload 4
StackMap locals:
StackMap stack: java.lang.Object
9: astore 3
end local 5 end local 4 10: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 11 1 key TK;
0 11 2 mappingFunction Ljava/util/function/Function<-TK;+TV;>;
3 11 3 v TV;
7 10 4 p TV;
5 10 5 r TV;
Signature: (TK;Ljava/util/function/Function<-TK;+TV;>;)TV;
MethodParameters:
Name Flags
key
mappingFunction
public V computeIfPresent(K, java.util.function.BiFunction<? super K, ? super V, ? extends V>);
descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 1
aload 2
ifnonnull 10
1: StackMap locals:
StackMap stack:
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
start local 3 2: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 4
start local 4 3: ifnull 10
4: aload 2
aload 1
aload 4
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 5
start local 5 5: aload 5
ifnull 8
6: getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 3
aload 4
aload 5
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 10
7: aload 5
areturn
8: StackMap locals: java.lang.Object java.lang.Object
StackMap stack:
aload 0
aload 1
aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doRemove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
ifnull 10
9: goto 12
end local 5 end local 4 end local 3 10: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNode:(Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 11: ifnonnull 2
12: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 13 1 key TK;
0 13 2 remappingFunction Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
2 10 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
11 13 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
3 10 4 v TV;
5 10 5 r TV;
Signature: (TK;Ljava/util/function/BiFunction<-TK;-TV;+TV;>;)TV;
MethodParameters:
Name Flags
key
remappingFunction
public V compute(K, java.util.function.BiFunction<? super K, ? super V, ? extends V>);
descriptor: (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 1
aload 2
ifnonnull 2
1: StackMap locals:
StackMap stack:
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNode:(Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 3: ifnonnull 9
4: aload 2
aload 1
aconst_null
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
dup
astore 5
start local 5 5: ifnonnull 7
6: goto 16
7: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.function.BiFunction java.util.concurrent.ConcurrentSkipListMap$Node top java.lang.Object
StackMap stack:
aload 0
aload 1
aload 5
iconst_1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doPut:(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
ifnonnull 2
8: aload 5
areturn
end local 5 9: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.function.BiFunction java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 4
start local 4 10: ifnull 2
11: aload 2
aload 1
aload 4
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
dup
astore 5
start local 5 12: ifnull 15
13: getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 3
aload 4
aload 5
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 2
14: aload 5
areturn
15: StackMap locals: java.lang.Object java.lang.Object
StackMap stack:
aload 0
aload 1
aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doRemove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
ifnull 2
end local 5 end local 4 end local 3 16: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 17 1 key TK;
0 17 2 remappingFunction Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
3 16 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
10 16 4 v TV;
5 9 5 r TV;
12 16 5 r TV;
Signature: (TK;Ljava/util/function/BiFunction<-TK;-TV;+TV;>;)TV;
MethodParameters:
Name Flags
key
remappingFunction
public V merge(K, V, java.util.function.BiFunction<? super V, ? super V, ? extends V>);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object;
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: aload 1
ifnull 1
aload 2
ifnull 1
aload 3
ifnonnull 2
1: StackMap locals:
StackMap stack:
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNode:(Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 4
start local 4 3: ifnonnull 6
4: aload 0
aload 1
aload 2
iconst_1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doPut:(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
ifnonnull 2
5: aload 2
areturn
6: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 5
start local 5 7: ifnull 2
8: aload 3
aload 5
aload 2
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
dup
astore 6
start local 6 9: ifnull 12
10: getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 4
aload 5
aload 6
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 2
11: aload 6
areturn
12: StackMap locals: java.lang.Object java.lang.Object
StackMap stack:
aload 0
aload 1
aload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doRemove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
ifnull 2
13: aconst_null
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 14 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 14 1 key TK;
0 14 2 value TV;
0 14 3 remappingFunction Ljava/util/function/BiFunction<-TV;-TV;+TV;>;
3 14 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
7 14 5 v TV;
9 14 6 r TV;
Signature: (TK;TV;Ljava/util/function/BiFunction<-TV;-TV;+TV;>;)TV;
MethodParameters:
Name Flags
key
value
remappingFunction
public java.util.NavigableSet<K> keySet();
descriptor: ()Ljava/util/NavigableSet;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.keySet:Ljava/util/concurrent/ConcurrentSkipListMap$KeySet;
dup
astore 1
start local 1 1: ifnull 2
aload 1
areturn
2: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$KeySet
StackMap stack:
aload 0
new java.util.concurrent.ConcurrentSkipListMap$KeySet
dup
aload 0
invokespecial java.util.concurrent.ConcurrentSkipListMap$KeySet.<init>:(Ljava/util/concurrent/ConcurrentNavigableMap;)V
dup_x1
putfield java.util.concurrent.ConcurrentSkipListMap.keySet:Ljava/util/concurrent/ConcurrentSkipListMap$KeySet;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 3 1 ks Ljava/util/concurrent/ConcurrentSkipListMap$KeySet<TK;TV;>;
Signature: ()Ljava/util/NavigableSet<TK;>;
public java.util.NavigableSet<K> navigableKeySet();
descriptor: ()Ljava/util/NavigableSet;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.keySet:Ljava/util/concurrent/ConcurrentSkipListMap$KeySet;
dup
astore 1
start local 1 1: ifnull 2
aload 1
areturn
2: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$KeySet
StackMap stack:
aload 0
new java.util.concurrent.ConcurrentSkipListMap$KeySet
dup
aload 0
invokespecial java.util.concurrent.ConcurrentSkipListMap$KeySet.<init>:(Ljava/util/concurrent/ConcurrentNavigableMap;)V
dup_x1
putfield java.util.concurrent.ConcurrentSkipListMap.keySet:Ljava/util/concurrent/ConcurrentSkipListMap$KeySet;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 3 1 ks Ljava/util/concurrent/ConcurrentSkipListMap$KeySet<TK;TV;>;
Signature: ()Ljava/util/NavigableSet<TK;>;
public java.util.Collection<V> values();
descriptor: ()Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.values:Ljava/util/concurrent/ConcurrentSkipListMap$Values;
dup
astore 1
start local 1 1: ifnull 2
aload 1
areturn
2: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Values
StackMap stack:
aload 0
new java.util.concurrent.ConcurrentSkipListMap$Values
dup
aload 0
invokespecial java.util.concurrent.ConcurrentSkipListMap$Values.<init>:(Ljava/util/concurrent/ConcurrentNavigableMap;)V
dup_x1
putfield java.util.concurrent.ConcurrentSkipListMap.values:Ljava/util/concurrent/ConcurrentSkipListMap$Values;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 3 1 vs Ljava/util/concurrent/ConcurrentSkipListMap$Values<TK;TV;>;
Signature: ()Ljava/util/Collection<TV;>;
public java.util.Set<java.util.Map$Entry<K, V>> entrySet();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.entrySet:Ljava/util/concurrent/ConcurrentSkipListMap$EntrySet;
dup
astore 1
start local 1 1: ifnull 2
aload 1
areturn
2: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$EntrySet
StackMap stack:
aload 0
new java.util.concurrent.ConcurrentSkipListMap$EntrySet
dup
aload 0
invokespecial java.util.concurrent.ConcurrentSkipListMap$EntrySet.<init>:(Ljava/util/concurrent/ConcurrentNavigableMap;)V
dup_x1
putfield java.util.concurrent.ConcurrentSkipListMap.entrySet:Ljava/util/concurrent/ConcurrentSkipListMap$EntrySet;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 3 1 es Ljava/util/concurrent/ConcurrentSkipListMap$EntrySet<TK;TV;>;
Signature: ()Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;
public java.util.concurrent.ConcurrentNavigableMap<K, V> descendingMap();
descriptor: ()Ljava/util/concurrent/ConcurrentNavigableMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=2, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.descendingMap:Ljava/util/concurrent/ConcurrentSkipListMap$SubMap;
dup
astore 1
start local 1 1: ifnull 2
aload 1
areturn
2: StackMap locals: java.util.concurrent.ConcurrentNavigableMap
StackMap stack:
aload 0
3: new java.util.concurrent.ConcurrentSkipListMap$SubMap
dup
aload 0
aconst_null
iconst_0
aconst_null
iconst_0
iconst_1
invokespecial java.util.concurrent.ConcurrentSkipListMap$SubMap.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/lang/Object;ZLjava/lang/Object;ZZ)V
4: dup_x1
putfield java.util.concurrent.ConcurrentSkipListMap.descendingMap:Ljava/util/concurrent/ConcurrentSkipListMap$SubMap;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 5 1 dm Ljava/util/concurrent/ConcurrentNavigableMap<TK;TV;>;
Signature: ()Ljava/util/concurrent/ConcurrentNavigableMap<TK;TV;>;
public java.util.NavigableSet<K> descendingKeySet();
descriptor: ()Ljava/util/NavigableSet;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.descendingMap:()Ljava/util/concurrent/ConcurrentNavigableMap;
invokeinterface java.util.concurrent.ConcurrentNavigableMap.navigableKeySet:()Ljava/util/NavigableSet;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Signature: ()Ljava/util/NavigableSet<TK;>;
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=12, args_size=2
start local 0 start local 1 0: aload 1
aload 0
if_acmpne 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
instanceof java.util.Map
ifne 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 1
checkcast java.util.Map
astore 2
start local 2 5: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
astore 3
start local 3 6: aload 2
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
start local 4 7: aload 2
instanceof java.util.SortedMap
ifeq 41
8: aload 2
checkcast java.util.SortedMap
invokeinterface java.util.SortedMap.comparator:()Ljava/util/Comparator;
aload 3
if_acmpne 41
9: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 5
start local 5 10: ifnull 31
11: goto 29
start local 6 12: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map java.util.Comparator java.util.Iterator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 8
start local 8 13: ifnull 28
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 7
start local 7 14: ifnull 28
15: aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 17
16: iconst_0
ireturn
17: StackMap locals: java.lang.Object java.lang.Object
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 9
start local 9 18: aload 9
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
astore 10
start local 10 19: aload 9
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
astore 11
start local 11 20: aload 10
ifnull 21
aload 11
ifnonnull 22
21: StackMap locals: java.util.Map$Entry java.lang.Object java.lang.Object
StackMap stack:
iconst_0
ireturn
22: StackMap locals:
StackMap stack:
aload 3
aload 7
aload 10
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
ifeq 26
23: iconst_0
ireturn
24: StackMap locals:
StackMap stack: java.lang.ClassCastException
pop
25: iconst_0
ireturn
26: StackMap locals:
StackMap stack:
aload 11
aload 8
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 28
27: iconst_0
ireturn
end local 11 end local 10 end local 9 end local 7 28: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map java.util.Comparator java.util.Iterator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node top java.lang.Object
StackMap stack:
aload 6
astore 5
end local 8 end local 6 29: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map java.util.Comparator java.util.Iterator java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 6
start local 6 30: ifnonnull 12
end local 6 31: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifeq 32
iconst_0
goto 33
StackMap locals:
StackMap stack:
32: iconst_1
StackMap locals:
StackMap stack: int
33: ireturn
end local 5 34: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 6
start local 6 35: aload 6
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
astore 7
start local 7 36: aload 6
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
astore 8
start local 8 37: aload 7
ifnull 40
aload 8
ifnull 40
38: aload 0
aload 7
invokevirtual java.util.concurrent.ConcurrentSkipListMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
dup
astore 5
start local 5 39: ifnull 40
aload 5
aload 8
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 41
end local 5 40: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map java.util.Comparator java.util.Iterator top java.util.Map$Entry java.lang.Object java.lang.Object
StackMap stack:
iconst_0
ireturn
end local 8 end local 7 end local 6 41: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map java.util.Comparator java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 34
42: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 5
start local 5 43: ifnull 54
44: goto 52
start local 6 45: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 8
start local 8 46: ifnull 51
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
dup
astore 7
start local 7 47: ifnull 51
48: aload 2
aload 7
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
dup
astore 9
start local 9 49: ifnull 50
aload 9
aload 8
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 51
50: StackMap locals: java.lang.Object java.lang.Object java.lang.Object
StackMap stack:
iconst_0
ireturn
end local 9 end local 7 51: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map java.util.Comparator java.util.Iterator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node top java.lang.Object
StackMap stack:
aload 6
astore 5
end local 8 end local 6 52: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map java.util.Comparator java.util.Iterator java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 6
start local 6 53: ifnonnull 45
end local 6 54: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 5 end local 4 end local 3 55: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map
StackMap stack: java.lang.RuntimeException
pop
56: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 57 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 57 1 o Ljava/lang/Object;
5 57 2 m Ljava/util/Map<**>;
6 55 3 cmp Ljava/util/Comparator<-TK;>;
7 55 4 it Ljava/util/Iterator<+Ljava/util/Map$Entry<**>;>;
10 34 5 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
12 29 6 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
30 31 6 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
14 28 7 k TK;
13 29 8 v TV;
18 28 9 e Ljava/util/Map$Entry<**>;
19 28 10 mk Ljava/lang/Object;
20 28 11 mv Ljava/lang/Object;
39 40 5 v TV;
35 41 6 e Ljava/util/Map$Entry<**>;
36 41 7 mk Ljava/lang/Object;
37 41 8 mv Ljava/lang/Object;
43 55 5 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
45 52 6 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
53 54 6 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
47 51 7 k TK;
46 52 8 v TV;
49 51 9 mv Ljava/lang/Object;
Exception table:
from to target type
22 23 24 Class java.lang.ClassCastException
5 16 55 Class java.lang.ClassCastException
17 21 55 Class java.lang.ClassCastException
22 23 55 Class java.lang.ClassCastException
24 25 55 Class java.lang.ClassCastException
26 27 55 Class java.lang.ClassCastException
28 33 55 Class java.lang.ClassCastException
34 40 55 Class java.lang.ClassCastException
41 50 55 Class java.lang.ClassCastException
51 54 55 Class java.lang.ClassCastException
5 16 55 Class java.lang.NullPointerException
17 21 55 Class java.lang.NullPointerException
22 23 55 Class java.lang.NullPointerException
24 25 55 Class java.lang.NullPointerException
26 27 55 Class java.lang.NullPointerException
28 33 55 Class java.lang.NullPointerException
34 40 55 Class java.lang.NullPointerException
41 50 55 Class java.lang.NullPointerException
51 54 55 Class java.lang.NullPointerException
MethodParameters:
Name Flags
o
public V putIfAbsent(K, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
iconst_1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doPut:(Ljava/lang/Object;Ljava/lang/Object;Z)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 3 1 key TK;
0 3 2 value TV;
Signature: (TK;TV;)TV;
MethodParameters:
Name Flags
key
value
public boolean remove(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 2
ifnull 3
aload 0
aload 1
aload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doRemove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
ifnull 3
iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 4 1 key Ljava/lang/Object;
0 4 2 value Ljava/lang/Object;
MethodParameters:
Name Flags
key
value
public boolean replace(K, V, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnull 1
aload 2
ifnull 1
aload 3
ifnonnull 2
1: StackMap locals:
StackMap stack:
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNode:(Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 4
start local 4 3: ifnonnull 5
4: iconst_0
ireturn
5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 5
start local 5 6: ifnull 2
7: aload 2
aload 5
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 9
8: iconst_0
ireturn
9: StackMap locals: java.lang.Object
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 4
aload 5
aload 3
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 2
10: iconst_1
ireturn
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 11 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 11 1 key TK;
0 11 2 oldValue TV;
0 11 3 newValue TV;
3 11 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
6 11 5 v TV;
Signature: (TK;TV;TV;)Z
MethodParameters:
Name Flags
key
oldValue
newValue
public V replace(K, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 1
aload 2
ifnonnull 2
1: StackMap locals:
StackMap stack:
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNode:(Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 3: ifnonnull 5
4: aconst_null
areturn
5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 4
start local 4 6: ifnull 2
getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 3
aload 4
aload 2
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 2
7: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 8 1 key TK;
0 8 2 value TV;
3 8 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
6 8 4 v TV;
Signature: (TK;TV;)TV;
MethodParameters:
Name Flags
key
value
public java.util.Comparator<? super K> comparator();
descriptor: ()Ljava/util/Comparator;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Signature: ()Ljava/util/Comparator<-TK;>;
public K firstKey();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findFirst:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: new java.util.NoSuchElementException
dup
invokespecial java.util.NoSuchElementException.<init>:()V
athrow
3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 4 1 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
Signature: ()TK;
public K lastKey();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findLast:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: new java.util.NoSuchElementException
dup
invokespecial java.util.NoSuchElementException.<init>:()V
athrow
3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 4 1 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
Signature: ()TK;
public java.util.concurrent.ConcurrentNavigableMap<K, V> subMap(K, boolean, K, boolean);
descriptor: (Ljava/lang/Object;ZLjava/lang/Object;Z)Ljava/util/concurrent/ConcurrentNavigableMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
ifnull 1
aload 3
ifnonnull 2
1: StackMap locals:
StackMap stack:
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$SubMap
dup
3: aload 0
aload 1
iload 2
aload 3
iload 4
iconst_0
4: invokespecial java.util.concurrent.ConcurrentSkipListMap$SubMap.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/lang/Object;ZLjava/lang/Object;ZZ)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 5 1 fromKey TK;
0 5 2 fromInclusive Z
0 5 3 toKey TK;
0 5 4 toInclusive Z
Signature: (TK;ZTK;Z)Ljava/util/concurrent/ConcurrentNavigableMap<TK;TV;>;
MethodParameters:
Name Flags
fromKey
fromInclusive
toKey
toInclusive
public java.util.concurrent.ConcurrentNavigableMap<K, V> headMap(K, boolean);
descriptor: (Ljava/lang/Object;Z)Ljava/util/concurrent/ConcurrentNavigableMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$SubMap
dup
3: aload 0
aconst_null
iconst_0
aload 1
iload 2
iconst_0
4: invokespecial java.util.concurrent.ConcurrentSkipListMap$SubMap.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/lang/Object;ZLjava/lang/Object;ZZ)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 5 1 toKey TK;
0 5 2 inclusive Z
Signature: (TK;Z)Ljava/util/concurrent/ConcurrentNavigableMap<TK;TV;>;
MethodParameters:
Name Flags
toKey
inclusive
public java.util.concurrent.ConcurrentNavigableMap<K, V> tailMap(K, boolean);
descriptor: (Ljava/lang/Object;Z)Ljava/util/concurrent/ConcurrentNavigableMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
2: StackMap locals:
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$SubMap
dup
3: aload 0
aload 1
iload 2
aconst_null
iconst_0
iconst_0
4: invokespecial java.util.concurrent.ConcurrentSkipListMap$SubMap.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap;Ljava/lang/Object;ZLjava/lang/Object;ZZ)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 5 1 fromKey TK;
0 5 2 inclusive Z
Signature: (TK;Z)Ljava/util/concurrent/ConcurrentNavigableMap<TK;TV;>;
MethodParameters:
Name Flags
fromKey
inclusive
public java.util.concurrent.ConcurrentNavigableMap<K, V> subMap(K, K);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentNavigableMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iconst_1
aload 2
iconst_0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.subMap:(Ljava/lang/Object;ZLjava/lang/Object;Z)Ljava/util/concurrent/ConcurrentNavigableMap;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 1 1 fromKey TK;
0 1 2 toKey TK;
Signature: (TK;TK;)Ljava/util/concurrent/ConcurrentNavigableMap<TK;TV;>;
MethodParameters:
Name Flags
fromKey
toKey
public java.util.concurrent.ConcurrentNavigableMap<K, V> headMap(K);
descriptor: (Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentNavigableMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.headMap:(Ljava/lang/Object;Z)Ljava/util/concurrent/ConcurrentNavigableMap;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 1 1 toKey TK;
Signature: (TK;)Ljava/util/concurrent/ConcurrentNavigableMap<TK;TV;>;
MethodParameters:
Name Flags
toKey
public java.util.concurrent.ConcurrentNavigableMap<K, V> tailMap(K);
descriptor: (Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentNavigableMap;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.tailMap:(Ljava/lang/Object;Z)Ljava/util/concurrent/ConcurrentNavigableMap;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 1 1 fromKey TK;
Signature: (TK;)Ljava/util/concurrent/ConcurrentNavigableMap<TK;TV;>;
MethodParameters:
Name Flags
fromKey
public java.util.Map$Entry<K, V> lowerEntry(K);
descriptor: (Ljava/lang/Object;)Ljava/util/Map$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_2
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNearEntry:(Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/AbstractMap$SimpleImmutableEntry;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 1 1 key TK;
Signature: (TK;)Ljava/util/Map$Entry<TK;TV;>;
MethodParameters:
Name Flags
key
public K lowerKey();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_2
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNear:(Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 1: aload 2
ifnonnull 2
aconst_null
goto 3
StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
2: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
3: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 4 1 key TK;
1 4 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
Signature: (TK;)TK;
MethodParameters:
Name Flags
key
public java.util.Map$Entry<K, V> floorEntry(K);
descriptor: (Ljava/lang/Object;)Ljava/util/Map$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_3
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNearEntry:(Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/AbstractMap$SimpleImmutableEntry;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 1 1 key TK;
Signature: (TK;)Ljava/util/Map$Entry<TK;TV;>;
MethodParameters:
Name Flags
key
public K floorKey();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_3
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNear:(Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 1: aload 2
ifnonnull 2
aconst_null
goto 3
StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
2: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
3: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 4 1 key TK;
1 4 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
Signature: (TK;)TK;
MethodParameters:
Name Flags
key
public java.util.Map$Entry<K, V> ceilingEntry(K);
descriptor: (Ljava/lang/Object;)Ljava/util/Map$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNearEntry:(Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/AbstractMap$SimpleImmutableEntry;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 1 1 key TK;
Signature: (TK;)Ljava/util/Map$Entry<TK;TV;>;
MethodParameters:
Name Flags
key
public K ceilingKey();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNear:(Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 1: aload 2
ifnonnull 2
aconst_null
goto 3
StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
2: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
3: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 4 1 key TK;
1 4 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
Signature: (TK;)TK;
MethodParameters:
Name Flags
key
public java.util.Map$Entry<K, V> higherEntry(K);
descriptor: (Ljava/lang/Object;)Ljava/util/Map$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNearEntry:(Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/AbstractMap$SimpleImmutableEntry;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 1 1 key TK;
Signature: (TK;)Ljava/util/Map$Entry<TK;TV;>;
MethodParameters:
Name Flags
key
public K higherKey();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNear:(Ljava/lang/Object;ILjava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 1: aload 2
ifnonnull 2
aconst_null
goto 3
StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
2: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
StackMap locals:
StackMap stack: java.lang.Object
3: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 4 1 key TK;
1 4 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
Signature: (TK;)TK;
MethodParameters:
Name Flags
key
public java.util.Map$Entry<K, V> firstEntry();
descriptor: ()Ljava/util/Map$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findFirstEntry:()Ljava/util/AbstractMap$SimpleImmutableEntry;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Signature: ()Ljava/util/Map$Entry<TK;TV;>;
public java.util.Map$Entry<K, V> lastEntry();
descriptor: ()Ljava/util/Map$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findLastEntry:()Ljava/util/AbstractMap$SimpleImmutableEntry;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Signature: ()Ljava/util/Map$Entry<TK;TV;>;
public java.util.Map$Entry<K, V> pollFirstEntry();
descriptor: ()Ljava/util/Map$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doRemoveFirstEntry:()Ljava/util/AbstractMap$SimpleImmutableEntry;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Signature: ()Ljava/util/Map$Entry<TK;TV;>;
public java.util.Map$Entry<K, V> pollLastEntry();
descriptor: ()Ljava/util/Map$Entry;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doRemoveLastEntry:()Ljava/util/Map$Entry;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Signature: ()Ljava/util/Map$Entry<TK;TV;>;
static final <E> java.util.List<E> toList(java.util.Collection<E>);
descriptor: (Ljava/util/Collection;)Ljava/util/List;
flags: (0x0018) ACC_STATIC, ACC_FINAL
Code:
stack=2, locals=4, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 1: aload 0
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 3
goto 4
StackMap locals: java.util.Collection java.util.ArrayList top java.util.Iterator
StackMap stack:
2: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Object
astore 2
start local 2 3: aload 1
aload 2
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 2 4: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
5: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 c Ljava/util/Collection<TE;>;
1 6 1 list Ljava/util/ArrayList<TE;>;
3 4 2 e TE;
Signature: <E:Ljava/lang/Object;>(Ljava/util/Collection<TE;>;)Ljava/util/List<TE;>;
MethodParameters:
Name Flags
c
public void forEach(java.util.function.BiConsumer<? super K, ? super V>);
descriptor: (Ljava/util/function/BiConsumer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 1
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 2: ifnull 10
3: goto 8
start local 3 4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 4
start local 4 5: ifnull 7
6: aload 1
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
aload 4
invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
7: StackMap locals: java.lang.Object
StackMap stack:
aload 3
astore 2
end local 4 end local 3 8: StackMap locals:
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 9: ifnonnull 4
end local 3 10: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 11 1 action Ljava/util/function/BiConsumer<-TK;-TV;>;
2 11 2 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 8 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
9 10 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 8 4 v TV;
Signature: (Ljava/util/function/BiConsumer<-TK;-TV;>;)V
MethodParameters:
Name Flags
action
public void replaceAll(java.util.function.BiFunction<? super K, ? super V, ? extends V>);
descriptor: (Ljava/util/function/BiFunction;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 1
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 2: ifnull 13
3: goto 11
start local 3 start local 4 4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object
StackMap stack:
aload 1
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
aload 4
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 5
start local 5 5: aload 5
ifnonnull 6
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
6: StackMap locals: java.lang.Object
StackMap stack:
getstatic java.util.concurrent.ConcurrentSkipListMap.VAL:Ljava/lang/invoke/VarHandle;
aload 3
aload 4
aload 5
invokevirtual java.lang.invoke.VarHandle.compareAndSet:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 8
7: goto 10
end local 5 end local 4 8: StackMap locals:
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 4
start local 4 9: ifnonnull 4
10: StackMap locals: java.lang.Object
StackMap stack:
aload 3
astore 2
end local 4 end local 3 11: StackMap locals:
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 12: ifnonnull 8
end local 3 13: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 14 1 function Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
2 14 2 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 11 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
12 13 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 8 4 v TV;
9 11 4 v TV;
5 8 5 r TV;
Signature: (Ljava/util/function/BiFunction<-TK;-TV;+TV;>;)V
MethodParameters:
Name Flags
function
boolean removeEntryIf(java.util.function.Predicate<? super java.util.Map$Entry<K, V>>);
descriptor: (Ljava/util/function/Predicate;)Z
flags: (0x0000)
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 1
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 2: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 3: ifnull 14
4: goto 12
start local 4 5: StackMap locals: int java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 5
start local 5 6: ifnull 11
7: aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
astore 6
start local 6 8: new java.util.AbstractMap$SimpleImmutableEntry
dup
aload 6
aload 5
invokespecial java.util.AbstractMap$SimpleImmutableEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
astore 7
start local 7 9: aload 1
aload 7
invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
ifeq 11
aload 0
aload 6
aload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 11
10: iconst_1
istore 2
end local 7 end local 6 11: StackMap locals: java.lang.Object
StackMap stack:
aload 4
astore 3
end local 5 end local 4 12: StackMap locals:
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 4
start local 4 13: ifnonnull 5
end local 4 14: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 15 1 function Ljava/util/function/Predicate<-Ljava/util/Map$Entry<TK;TV;>;>;
2 15 2 removed Z
3 15 3 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 12 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
13 14 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
6 12 5 v TV;
8 11 6 k TK;
9 11 7 e Ljava/util/Map$Entry<TK;TV;>;
Signature: (Ljava/util/function/Predicate<-Ljava/util/Map$Entry<TK;TV;>;>;)Z
MethodParameters:
Name Flags
function
boolean removeValueIf(java.util.function.Predicate<? super V>);
descriptor: (Ljava/util/function/Predicate;)Z
flags: (0x0000)
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 1
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
iconst_0
istore 2
start local 2 2: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.baseHead:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 3: ifnull 11
4: goto 9
start local 4 5: StackMap locals: int java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.val:Ljava/lang/Object;
dup
astore 5
start local 5 6: ifnull 8
aload 1
aload 5
invokeinterface java.util.function.Predicate.test:(Ljava/lang/Object;)Z
ifeq 8
aload 0
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
aload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap.remove:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 8
7: iconst_1
istore 2
8: StackMap locals: java.lang.Object
StackMap stack:
aload 4
astore 3
end local 5 end local 4 9: StackMap locals:
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 4
start local 4 10: ifnonnull 5
end local 4 11: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 12 1 function Ljava/util/function/Predicate<-TV;>;
2 12 2 removed Z
3 12 3 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 9 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
10 11 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
6 9 5 v TV;
Signature: (Ljava/util/function/Predicate<-TV;>;)Z
MethodParameters:
Name Flags
function
final java.util.concurrent.ConcurrentSkipListMap$KeySpliterator<K, V> keySpliterator();
descriptor: ()Ljava/util/concurrent/ConcurrentSkipListMap$KeySpliterator;
flags: (0x0010) ACC_FINAL
Code:
stack=8, locals=5, args_size=1
start local 0 0: invokestatic java.lang.invoke.VarHandle.acquireFence:()V
1: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 1
start local 1 2: ifnonnull 6
3: aconst_null
astore 2
start local 2 4: lconst_0
lstore 3
start local 3 5: goto 8
end local 3 end local 2 6: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 7: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.getAdderCount:()J
lstore 3
start local 3 8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node long
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$KeySpliterator
dup
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
aload 1
aload 2
aconst_null
lload 3
invokespecial java.util.concurrent.ConcurrentSkipListMap$KeySpliterator.<init>:(Ljava/util/Comparator;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;J)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
2 9 1 h Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
4 6 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
7 9 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 6 3 est J
8 9 3 est J
Signature: ()Ljava/util/concurrent/ConcurrentSkipListMap$KeySpliterator<TK;TV;>;
final java.util.concurrent.ConcurrentSkipListMap$ValueSpliterator<K, V> valueSpliterator();
descriptor: ()Ljava/util/concurrent/ConcurrentSkipListMap$ValueSpliterator;
flags: (0x0010) ACC_FINAL
Code:
stack=8, locals=5, args_size=1
start local 0 0: invokestatic java.lang.invoke.VarHandle.acquireFence:()V
1: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 1
start local 1 2: ifnonnull 6
3: aconst_null
astore 2
start local 2 4: lconst_0
lstore 3
start local 3 5: goto 8
end local 3 end local 2 6: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 7: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.getAdderCount:()J
lstore 3
start local 3 8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node long
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$ValueSpliterator
dup
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
aload 1
aload 2
aconst_null
lload 3
invokespecial java.util.concurrent.ConcurrentSkipListMap$ValueSpliterator.<init>:(Ljava/util/Comparator;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;J)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
2 9 1 h Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
4 6 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
7 9 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 6 3 est J
8 9 3 est J
Signature: ()Ljava/util/concurrent/ConcurrentSkipListMap$ValueSpliterator<TK;TV;>;
final java.util.concurrent.ConcurrentSkipListMap$EntrySpliterator<K, V> entrySpliterator();
descriptor: ()Ljava/util/concurrent/ConcurrentSkipListMap$EntrySpliterator;
flags: (0x0010) ACC_FINAL
Code:
stack=8, locals=5, args_size=1
start local 0 0: invokestatic java.lang.invoke.VarHandle.acquireFence:()V
1: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 1
start local 1 2: ifnonnull 6
3: aconst_null
astore 2
start local 2 4: lconst_0
lstore 3
start local 3 5: goto 8
end local 3 end local 2 6: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 7: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.getAdderCount:()J
lstore 3
start local 3 8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node long
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$EntrySpliterator
dup
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
aload 1
aload 2
aconst_null
lload 3
invokespecial java.util.concurrent.ConcurrentSkipListMap$EntrySpliterator.<init>:(Ljava/util/Comparator;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;J)V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
2 9 1 h Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
4 6 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
7 9 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 6 3 est J
8 9 3 est J
Signature: ()Ljava/util/concurrent/ConcurrentSkipListMap$EntrySpliterator<TK;TV;>;
public java.util.SortedMap subMap(java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/SortedMap;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast java.lang.Object
aload 2
checkcast java.lang.Object
invokevirtual java.util.concurrent.ConcurrentSkipListMap.subMap:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentNavigableMap;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.NavigableMap subMap(java.lang.Object, boolean, java.lang.Object, boolean);
descriptor: (Ljava/lang/Object;ZLjava/lang/Object;Z)Ljava/util/NavigableMap;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=5
0: aload 0
aload 1
checkcast java.lang.Object
iload 2
aload 3
checkcast java.lang.Object
iload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap.subMap:(Ljava/lang/Object;ZLjava/lang/Object;Z)Ljava/util/concurrent/ConcurrentNavigableMap;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.Set keySet();
descriptor: ()Ljava/util/Set;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.keySet:()Ljava/util/NavigableSet;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.SortedMap headMap(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/util/SortedMap;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.lang.Object
invokevirtual java.util.concurrent.ConcurrentSkipListMap.headMap:(Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentNavigableMap;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.NavigableMap headMap(java.lang.Object, boolean);
descriptor: (Ljava/lang/Object;Z)Ljava/util/NavigableMap;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast java.lang.Object
iload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap.headMap:(Ljava/lang/Object;Z)Ljava/util/concurrent/ConcurrentNavigableMap;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.NavigableMap descendingMap();
descriptor: ()Ljava/util/NavigableMap;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.descendingMap:()Ljava/util/concurrent/ConcurrentNavigableMap;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.clone:()Ljava/util/concurrent/ConcurrentSkipListMap;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.CloneNotSupportedException
public java.util.SortedMap tailMap(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/util/SortedMap;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.lang.Object
invokevirtual java.util.concurrent.ConcurrentSkipListMap.tailMap:(Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentNavigableMap;
areturn
LocalVariableTable:
Start End Slot Name Signature
public java.util.NavigableMap tailMap(java.lang.Object, boolean);
descriptor: (Ljava/lang/Object;Z)Ljava/util/NavigableMap;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=3
0: aload 0
aload 1
checkcast java.lang.Object
iload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap.tailMap:(Ljava/lang/Object;Z)Ljava/util/concurrent/ConcurrentNavigableMap;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/util/AbstractMap<TK;TV;>;Ljava/util/concurrent/ConcurrentNavigableMap<TK;TV;>;Ljava/lang/Cloneable;Ljava/io/Serializable;
SourceFile: "ConcurrentSkipListMap.java"
NestMembers:
java.util.concurrent.ConcurrentSkipListMap$CSLMSpliterator java.util.concurrent.ConcurrentSkipListMap$EntryIterator java.util.concurrent.ConcurrentSkipListMap$EntrySet java.util.concurrent.ConcurrentSkipListMap$EntrySpliterator java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Iter java.util.concurrent.ConcurrentSkipListMap$KeyIterator java.util.concurrent.ConcurrentSkipListMap$KeySet java.util.concurrent.ConcurrentSkipListMap$KeySpliterator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$SubMap java.util.concurrent.ConcurrentSkipListMap$SubMap$SubMapEntryIterator java.util.concurrent.ConcurrentSkipListMap$SubMap$SubMapIter java.util.concurrent.ConcurrentSkipListMap$SubMap$SubMapKeyIterator java.util.concurrent.ConcurrentSkipListMap$SubMap$SubMapValueIterator java.util.concurrent.ConcurrentSkipListMap$ValueIterator java.util.concurrent.ConcurrentSkipListMap$ValueSpliterator java.util.concurrent.ConcurrentSkipListMap$Values
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public SimpleImmutableEntry = java.util.AbstractMap$SimpleImmutableEntry of java.util.AbstractMap
public abstract Entry = java.util.Map$Entry of java.util.Map
abstract CSLMSpliterator = java.util.concurrent.ConcurrentSkipListMap$CSLMSpliterator of java.util.concurrent.ConcurrentSkipListMap
final EntryIterator = java.util.concurrent.ConcurrentSkipListMap$EntryIterator of java.util.concurrent.ConcurrentSkipListMap
final EntrySet = java.util.concurrent.ConcurrentSkipListMap$EntrySet of java.util.concurrent.ConcurrentSkipListMap
final EntrySpliterator = java.util.concurrent.ConcurrentSkipListMap$EntrySpliterator of java.util.concurrent.ConcurrentSkipListMap
final Index = java.util.concurrent.ConcurrentSkipListMap$Index of java.util.concurrent.ConcurrentSkipListMap
abstract Iter = java.util.concurrent.ConcurrentSkipListMap$Iter of java.util.concurrent.ConcurrentSkipListMap
final KeyIterator = java.util.concurrent.ConcurrentSkipListMap$KeyIterator of java.util.concurrent.ConcurrentSkipListMap
final KeySet = java.util.concurrent.ConcurrentSkipListMap$KeySet of java.util.concurrent.ConcurrentSkipListMap
final KeySpliterator = java.util.concurrent.ConcurrentSkipListMap$KeySpliterator of java.util.concurrent.ConcurrentSkipListMap
final Node = java.util.concurrent.ConcurrentSkipListMap$Node of java.util.concurrent.ConcurrentSkipListMap
final SubMap = java.util.concurrent.ConcurrentSkipListMap$SubMap of java.util.concurrent.ConcurrentSkipListMap
final ValueIterator = java.util.concurrent.ConcurrentSkipListMap$ValueIterator of java.util.concurrent.ConcurrentSkipListMap
final ValueSpliterator = java.util.concurrent.ConcurrentSkipListMap$ValueSpliterator of java.util.concurrent.ConcurrentSkipListMap
final Values = java.util.concurrent.ConcurrentSkipListMap$Values of java.util.concurrent.ConcurrentSkipListMap