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
private static final java.lang.Object ;
descriptor: Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private volatile transient java.util.concurrent.ConcurrentSkipListMap$HeadIndex<K, V> head;
descriptor: Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
flags: (0x00c2) ACC_PRIVATE, ACC_VOLATILE, ACC_TRANSIENT
Signature: Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
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$KeySet<K> keySet;
descriptor: Ljava/util/concurrent/ConcurrentSkipListMap$KeySet;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/concurrent/ConcurrentSkipListMap$KeySet<TK;>;
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$Values<V> values;
descriptor: Ljava/util/concurrent/ConcurrentSkipListMap$Values;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/concurrent/ConcurrentSkipListMap$Values<TV;>;
private transient java.util.concurrent.ConcurrentNavigableMap<K, V> descendingMap;
descriptor: Ljava/util/concurrent/ConcurrentNavigableMap;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/concurrent/ConcurrentNavigableMap<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 sun.misc.Unsafe UNSAFE;
descriptor: Lsun/misc/Unsafe;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final long headOffset;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final long SECONDARY;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=2, args_size=0
0: new java.lang.Object
dup
invokespecial java.lang.Object.<init>:()V
putstatic java.util.concurrent.ConcurrentSkipListMap.BASE_HEADER:Ljava/lang/Object;
1: invokestatic sun.misc.Unsafe.getUnsafe:()Lsun/misc/Unsafe;
putstatic java.util.concurrent.ConcurrentSkipListMap.UNSAFE:Lsun/misc/Unsafe;
2: ldc Ljava/util/concurrent/ConcurrentSkipListMap;
astore 0
start local 0 3: getstatic java.util.concurrent.ConcurrentSkipListMap.UNSAFE:Lsun/misc/Unsafe;
4: aload 0
ldc "head"
invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
5: invokevirtual sun.misc.Unsafe.objectFieldOffset:(Ljava/lang/reflect/Field;)J
putstatic java.util.concurrent.ConcurrentSkipListMap.headOffset:J
6: ldc Ljava/lang/Thread;
astore 1
start local 1 7: getstatic java.util.concurrent.ConcurrentSkipListMap.UNSAFE:Lsun/misc/Unsafe;
8: aload 1
ldc "threadLocalRandomSecondarySeed"
invokevirtual java.lang.Class.getDeclaredField:(Ljava/lang/String;)Ljava/lang/reflect/Field;
9: invokevirtual sun.misc.Unsafe.objectFieldOffset:(Ljava/lang/reflect/Field;)J
putstatic java.util.concurrent.ConcurrentSkipListMap.SECONDARY:J
end local 1 end local 0 10: goto 13
StackMap locals:
StackMap stack: java.lang.Exception
11: astore 0
start local 0 12: new java.lang.Error
dup
aload 0
invokespecial java.lang.Error.<init>:(Ljava/lang/Throwable;)V
athrow
end local 0 13: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
3 10 0 k Ljava/lang/Class<*>;
7 10 1 tk Ljava/lang/Class<*>;
12 13 0 e Ljava/lang/Exception;
Exception table:
from to target type
1 10 11 Class java.lang.Exception
private void initialize();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.keySet:Ljava/util/concurrent/ConcurrentSkipListMap$KeySet;
1: aload 0
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.entrySet:Ljava/util/concurrent/ConcurrentSkipListMap$EntrySet;
2: aload 0
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.values:Ljava/util/concurrent/ConcurrentSkipListMap$Values;
3: aload 0
aconst_null
putfield java.util.concurrent.ConcurrentSkipListMap.descendingMap:Ljava/util/concurrent/ConcurrentNavigableMap;
4: aload 0
new java.util.concurrent.ConcurrentSkipListMap$HeadIndex
dup
new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aconst_null
getstatic java.util.concurrent.ConcurrentSkipListMap.BASE_HEADER:Ljava/lang/Object;
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
5: aconst_null
aconst_null
iconst_1
invokespecial java.util.concurrent.ConcurrentSkipListMap$HeadIndex.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;I)V
6: putfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
private boolean casHead(java.util.concurrent.ConcurrentSkipListMap$HeadIndex<K, V>, java.util.concurrent.ConcurrentSkipListMap$HeadIndex<K, V>);
descriptor: (Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic java.util.concurrent.ConcurrentSkipListMap.UNSAFE:Lsun/misc/Unsafe;
aload 0
getstatic java.util.concurrent.ConcurrentSkipListMap.headOffset:J
aload 1
aload 2
invokevirtual sun.misc.Unsafe.compareAndSwapObject:(Ljava/lang/Object;JLjava/lang/Object;Ljava/lang/Object;)Z
ireturn
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 cmp Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
0 1 2 val Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
Signature: (Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;)Z
MethodParameters:
Name Flags
cmp
val
static final int cpr(java.util.Comparator, java.lang.Object, java.lang.Object);
descriptor: (Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
flags: (0x0018) ACC_STATIC, ACC_FINAL
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
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=3, locals=8, 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.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 3
start local 3 3: aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 4
start local 4 4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 4
ifnull 16
5: aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 6
start local 6 6: aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
astore 7
start local 7 7: aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnonnull 12
8: aload 3
aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Index.unlink:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;)Z
ifne 10
9: goto 2
10: 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 java.lang.Object
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 4
11: goto 4
12: StackMap locals:
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 16
13: aload 4
astore 3
14: aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 4
15: goto 4
end local 7 end local 6 16: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Index 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 17: ifnonnull 19
18: aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
areturn
19: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 5
astore 3
20: aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 4
end local 5 21: goto 4
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 22 1 key Ljava/lang/Object;
0 22 2 cmp Ljava/util/Comparator<-TK;>;
3 22 3 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
4 22 4 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
17 21 5 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
6 16 6 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
7 16 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=8, 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: StackMap locals: 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;
astore 3
start local 3 4: aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 4
start local 4 5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
ifnonnull 7
6: goto 24
7: StackMap locals:
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 7
start local 7 8: aload 4
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
if_acmpeq 10
9: goto 3
10: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node top top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
dup
astore 5
start local 5 11: ifnonnull 14
12: aload 4
aload 3
aload 7
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
13: goto 3
14: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 3
aload 5
aload 4
if_acmpne 16
15: goto 3
16: StackMap locals:
StackMap stack:
aload 2
aload 1
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 6
start local 6 17: ifne 19
18: aload 4
areturn
19: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
iload 6
ifge 21
20: goto 24
21: StackMap locals:
StackMap stack:
aload 4
astore 3
22: aload 7
astore 4
end local 7 end local 6 end local 5 23: goto 5
end local 4 end local 3 24: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 25 1 key Ljava/lang/Object;
3 25 2 cmp Ljava/util/Comparator<-TK;>;
4 24 3 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 24 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
11 23 5 v Ljava/lang/Object;
17 23 6 c I
8 23 7 f Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
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=3, locals=9, 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: StackMap locals: 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;
astore 3
start local 3 4: aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 4
start local 4 5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
ifnonnull 7
6: goto 25
7: StackMap locals:
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 7
start local 7 8: aload 4
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
if_acmpeq 10
9: goto 3
10: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node top top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
dup
astore 5
start local 5 11: ifnonnull 14
12: aload 4
aload 3
aload 7
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
13: goto 3
14: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 3
aload 5
aload 4
if_acmpne 16
15: goto 3
16: StackMap locals:
StackMap stack:
aload 2
aload 1
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 6
start local 6 17: ifne 20
18: aload 5
astore 8
start local 8 19: aload 8
areturn
end local 8 20: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
iload 6
ifge 22
21: goto 25
22: StackMap locals:
StackMap stack:
aload 4
astore 3
23: aload 7
astore 4
end local 7 end local 6 end local 5 24: goto 5
end local 4 end local 3 25: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Comparator
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 26 1 key Ljava/lang/Object;
3 26 2 cmp Ljava/util/Comparator<-TK;>;
4 25 3 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 25 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
11 24 5 v Ljava/lang/Object;
17 24 6 c I
8 24 7 f Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
19 20 8 vv TV;
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=7, locals=18, 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 5
start local 5 3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int top java.util.Comparator
StackMap stack:
aload 0
aload 1
aload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findPredecessor:(Ljava/lang/Object;Ljava/util/Comparator;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 6
start local 6 4: aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 7
start local 7 5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 7
ifnull 24
6: aload 7
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 10
start local 10 7: aload 7
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
if_acmpeq 9
8: goto 3
9: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int top java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node top top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 7
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
dup
astore 8
start local 8 10: ifnonnull 13
11: aload 7
aload 6
aload 10
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
12: goto 3
13: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int top java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 6
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 3
aload 8
aload 7
if_acmpne 15
14: goto 3
15: StackMap locals:
StackMap stack:
aload 5
aload 1
aload 7
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 9
start local 9 16: ifle 20
17: aload 7
astore 6
18: aload 10
astore 7
19: goto 5
20: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int top java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
iload 9
ifne 24
21: iload 3
ifne 22
aload 7
aload 8
aload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 3
22: StackMap locals:
StackMap stack:
aload 8
astore 11
start local 11 23: aload 11
areturn
end local 11 end local 10 end local 9 end local 8 24: StackMap locals:
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aload 1
aload 2
aload 7
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
astore 4
start local 4 25: aload 6
aload 7
aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casNext:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
ifne 27
end local 7 end local 6 end local 4 26: goto 3
start local 4 27: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Node java.util.Comparator
StackMap stack:
invokestatic java.util.concurrent.ThreadLocalRandom.nextSecondarySeed:()I
istore 6
start local 6 28: iload 6
ldc -2147483647
iand
ifne 97
29: iconst_1
istore 7
start local 7 30: goto 32
31: StackMap locals: int int
StackMap stack:
iinc 7 1
32: StackMap locals:
StackMap stack:
iload 6
iconst_1
iushr
dup
istore 6
iconst_1
iand
ifne 31
33: aconst_null
astore 9
start local 9 34: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 10
start local 10 35: iload 7
aload 10
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
dup
istore 8
start local 8 36: if_icmpgt 43
37: iconst_1
istore 11
start local 11 38: goto 41
39: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Node java.util.Comparator int int int java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$HeadIndex int
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 4
aload 9
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 9
40: iinc 11 1
StackMap locals:
StackMap stack:
41: iload 11
iload 7
if_icmple 39
end local 11 42: goto 65
43: StackMap locals:
StackMap stack:
iload 8
iconst_1
iadd
istore 7
44: iload 7
iconst_1
iadd
anewarray java.util.concurrent.ConcurrentSkipListMap$Index
45: astore 11
start local 11 46: iconst_1
istore 12
start local 12 47: goto 50
48: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index[] int
StackMap stack:
aload 11
iload 12
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 4
aload 9
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
astore 9
aastore
49: iinc 12 1
StackMap locals:
StackMap stack:
50: iload 12
iload 7
if_icmple 48
end local 12 51: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 10
52: aload 10
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
istore 12
start local 12 53: iload 7
iload 12
if_icmpgt 55
54: goto 65
55: StackMap locals: int
StackMap stack:
aload 10
astore 13
start local 13 56: aload 10
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 14
start local 14 57: iload 12
iconst_1
iadd
istore 15
start local 15 58: goto 61
59: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node int
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$HeadIndex
dup
aload 14
aload 13
aload 11
iload 15
aaload
iload 15
invokespecial java.util.concurrent.ConcurrentSkipListMap$HeadIndex.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;I)V
astore 13
60: iinc 15 1
StackMap locals:
StackMap stack:
61: iload 15
iload 7
if_icmple 59
end local 15 62: aload 0
aload 10
aload 13
invokevirtual java.util.concurrent.ConcurrentSkipListMap.casHead:(Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;)Z
ifeq 51
63: aload 13
astore 10
64: aload 11
iload 12
dup
istore 7
aaload
astore 9
end local 14 end local 13 end local 12 end local 11 65: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Node java.util.Comparator int int int java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$HeadIndex
StackMap stack:
iload 7
istore 11
start local 11 66: StackMap locals: int
StackMap stack:
aload 10
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
istore 12
start local 12 67: aload 10
astore 13
start local 13 68: aload 13
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 14
start local 14 69: aload 9
astore 15
start local 15 70: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Node java.util.Comparator int int int java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$HeadIndex int int java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 13
ifnull 97
aload 15
ifnonnull 72
71: goto 97
72: StackMap locals:
StackMap stack:
aload 14
ifnull 84
73: aload 14
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 16
start local 16 74: aload 5
aload 1
aload 16
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
istore 17
start local 17 75: aload 16
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnonnull 80
76: aload 13
aload 14
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Index.unlink:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;)Z
ifne 78
77: goto 66
78: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node int
StackMap stack:
aload 13
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 14
79: goto 70
80: StackMap locals:
StackMap stack:
iload 17
ifle 84
81: aload 14
astore 13
82: aload 14
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 14
83: goto 70
end local 17 end local 16 84: StackMap locals:
StackMap stack:
iload 12
iload 11
if_icmpne 92
85: aload 13
aload 14
aload 15
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Index.link:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;)Z
ifne 87
86: goto 66
87: StackMap locals:
StackMap stack:
aload 15
getfield java.util.concurrent.ConcurrentSkipListMap$Index.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnonnull 90
88: aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNode:(Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
pop
89: goto 97
90: StackMap locals:
StackMap stack:
iinc 11 -1
iload 11
ifne 92
91: goto 97
92: StackMap locals:
StackMap stack:
iinc 12 -1
iload 12
iload 11
if_icmplt 94
iload 12
iload 7
if_icmpge 94
93: aload 15
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 15
94: StackMap locals:
StackMap stack:
aload 13
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 13
95: aload 13
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 14
96: goto 70
end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 97: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Node java.util.Comparator int
StackMap stack:
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 98 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 98 1 key TK;
0 98 2 value TV;
0 98 3 onlyIfAbsent Z
25 26 4 z Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
27 98 4 z Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
3 98 5 cmp Ljava/util/Comparator<-TK;>;
4 26 6 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 26 7 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
10 24 8 v Ljava/lang/Object;
16 24 9 c I
7 24 10 f Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
23 24 11 vv TV;
28 98 6 rnd I
30 97 7 level I
36 97 8 max I
34 97 9 idx Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
35 97 10 h Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
38 42 11 i I
46 65 11 idxs [Ljava/util/concurrent/ConcurrentSkipListMap$Index;
47 51 12 i I
53 65 12 oldLevel I
56 65 13 newh Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
57 65 14 oldbase Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
58 62 15 j I
66 97 11 insertionLevel I
67 97 12 j I
68 97 13 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
69 97 14 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
70 97 15 t Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
74 84 16 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
75 84 17 c I
Signature: (TK;TV;Z)TV;
MethodParameters:
Name Flags
key
value
onlyIfAbsent
final V doRemove(, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0010) ACC_FINAL
Code:
stack=3, 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: StackMap locals: java.util.Comparator
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;
astore 4
start local 4 4: aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 5
start local 5 5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 5
ifnonnull 7
6: goto 34
7: StackMap locals:
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 8
start local 8 8: aload 5
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
if_acmpeq 10
9: goto 3
10: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node top top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
dup
astore 6
start local 6 11: ifnonnull 14
12: aload 5
aload 4
aload 8
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
13: goto 3
14: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 3
aload 6
aload 5
if_acmpne 16
15: goto 3
16: StackMap locals:
StackMap stack:
aload 3
aload 1
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
dup
istore 7
start local 7 17: ifge 19
18: goto 34
19: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object int java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
iload 7
ifle 23
20: aload 5
astore 4
21: aload 8
astore 5
22: goto 5
23: StackMap locals:
StackMap stack:
aload 2
ifnull 25
aload 2
aload 6
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 25
24: goto 34
25: StackMap locals:
StackMap stack:
aload 5
aload 6
aconst_null
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifne 27
26: goto 3
27: StackMap locals:
StackMap stack:
aload 5
aload 8
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.appendMarker:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
ifeq 28
aload 4
aload 5
aload 8
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casNext:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
ifne 29
28: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNode:(Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
pop
goto 32
29: 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;
pop
30: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnonnull 32
31: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.tryReduceLevel:()V
32: StackMap locals:
StackMap stack:
aload 6
astore 9
start local 9 33: aload 9
areturn
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 34: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.lang.Object java.util.Comparator
StackMap stack:
aconst_null
areturn
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 key Ljava/lang/Object;
0 35 2 value Ljava/lang/Object;
3 35 3 cmp Ljava/util/Comparator<-TK;>;
4 34 4 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 34 5 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
11 34 6 v Ljava/lang/Object;
17 34 7 c I
8 34 8 f Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
33 34 9 vv TV;
Signature: (Ljava/lang/Object;Ljava/lang/Object;)TV;
MethodParameters:
Name Flags
key
value
private void tryReduceLevel();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 1
start local 1 1: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
iconst_3
if_icmple 12
2: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
checkcast java.util.concurrent.ConcurrentSkipListMap$HeadIndex
dup
astore 2
start local 2 3: ifnull 12
4: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
checkcast java.util.concurrent.ConcurrentSkipListMap$HeadIndex
dup
astore 3
start local 3 5: ifnull 12
6: aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnonnull 12
7: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnonnull 12
8: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnonnull 12
9: aload 0
aload 1
aload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap.casHead:(Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;)Z
ifeq 12
10: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnull 12
11: aload 0
aload 2
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.casHead:(Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;)Z
pop
end local 3 end local 2 12: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$HeadIndex
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 13 1 h Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
3 12 2 d Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
5 12 3 e Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
final java.util.concurrent.ConcurrentSkipListMap$Node<K, V> findFirst();
descriptor: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
flags: (0x0010) ACC_FINAL
Code:
stack=3, locals=3, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 1
start local 1 1: getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 2: ifnonnull 4
3: aconst_null
areturn
4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 6
5: aload 2
areturn
6: StackMap locals:
StackMap stack:
aload 2
aload 1
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
end local 2 end local 1 7: goto 0
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 7 1 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
2 7 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
Signature: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
private java.util.Map$Entry<K, V> doRemoveFirstEntry();
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:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 1
start local 1 1: getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 2: ifnonnull 4
3: aconst_null
areturn
4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
start local 3 5: aload 2
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
if_acmpeq 7
6: goto 0
7: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
astore 4
start local 4 8: aload 4
ifnonnull 11
9: aload 2
aload 1
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
10: goto 0
11: StackMap locals: java.lang.Object
StackMap stack:
aload 2
aload 4
aconst_null
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifne 13
12: goto 0
13: StackMap locals:
StackMap stack:
aload 2
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.appendMarker:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
ifeq 14
aload 1
aload 2
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casNext:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
ifne 15
14: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findFirst:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
pop
15: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.clearIndexToFirst:()V
16: aload 4
astore 5
start local 5 17: new java.util.AbstractMap$SimpleImmutableEntry
dup
aload 2
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 18 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 18 1 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
2 18 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 18 3 f Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
8 18 4 v Ljava/lang/Object;
17 18 5 vv TV;
Signature: ()Ljava/util/Map$Entry<TK;TV;>;
private void clearIndexToFirst();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 1
start local 1 1: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 2
start local 2 2: aload 2
ifnull 4
aload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Index.indexesDeletedNode:()Z
ifeq 4
aload 1
aload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Index.unlink:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;)Z
ifne 4
3: goto 0
4: 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 1
ifnonnull 1
5: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnonnull 7
6: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.tryReduceLevel:()V
7: StackMap locals:
StackMap stack:
return
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;>;
1 8 1 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
2 8 2 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
private java.util.Map$Entry<K, V> doRemoveLastEntry();
descriptor: ()Ljava/util/Map$Entry;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findPredecessorOfLast:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 1
start local 1 1: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 2: aload 2
ifnonnull 5
3: aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.isBaseHeader:()Z
ifeq 0
4: aconst_null
areturn
5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
start local 3 6: aload 2
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
if_acmpeq 8
7: goto 0
8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
astore 4
start local 4 9: aload 4
ifnonnull 12
10: aload 2
aload 1
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
11: goto 0
12: StackMap locals: java.lang.Object
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 0
aload 4
aload 2
if_acmpne 14
13: goto 0
14: StackMap locals:
StackMap stack:
aload 3
ifnull 18
15: aload 2
astore 1
16: aload 3
astore 2
17: goto 5
18: StackMap locals:
StackMap stack:
aload 2
aload 4
aconst_null
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifne 20
19: goto 0
20: StackMap locals:
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
astore 5
start local 5 21: aload 2
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.appendMarker:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
ifeq 22
aload 1
aload 2
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casNext:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
ifne 23
22: StackMap locals: java.lang.Object
StackMap stack:
aload 0
aload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findNode:(Ljava/lang/Object;)Ljava/util/concurrent/ConcurrentSkipListMap$Node;
pop
goto 26
23: StackMap locals:
StackMap stack:
aload 0
aload 5
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
24: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
ifnonnull 26
25: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.tryReduceLevel:()V
26: StackMap locals:
StackMap stack:
aload 4
astore 6
start local 6 27: new java.util.AbstractMap$SimpleImmutableEntry
dup
aload 5
aload 6
invokespecial java.util.AbstractMap$SimpleImmutableEntry.<init>:(Ljava/lang/Object;Ljava/lang/Object;)V
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 28 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 28 1 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
2 28 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
6 28 3 f Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
9 28 4 v Ljava/lang/Object;
21 28 5 key TK;
27 28 6 vv TV;
Signature: ()Ljava/util/Map$Entry<TK;TV;>;
final java.util.concurrent.ConcurrentSkipListMap$Node<K, V> findLast();
descriptor: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
flags: (0x0010) ACC_FINAL
Code:
stack=3, locals=8, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 1
start local 1 1: 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 3
start local 3 2: ifnull 9
3: aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Index.indexesDeletedNode:()Z
ifeq 7
4: aload 1
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Index.unlink:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;)Z
pop
5: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 1
6: goto 1
7: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index top java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 3
astore 1
8: goto 1
StackMap locals:
StackMap stack:
9: aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 2
start local 2 10: ifnull 13
11: aload 2
astore 1
12: goto 1
13: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index 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 4
start local 4 14: aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 5
start local 5 15: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 5
ifnonnull 19
16: aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.isBaseHeader:()Z
ifeq 17
aconst_null
goto 18
StackMap locals:
StackMap stack:
17: aload 4
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$Node
18: areturn
19: StackMap locals:
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 6
start local 6 20: aload 5
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
if_acmpeq 22
21: goto 31
22: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
astore 7
start local 7 23: aload 7
ifnonnull 26
24: aload 5
aload 4
aload 6
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
25: goto 31
26: StackMap locals: java.lang.Object
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 31
aload 7
aload 5
if_acmpne 28
27: goto 31
28: StackMap locals:
StackMap stack:
aload 5
astore 4
29: aload 6
astore 5
end local 7 end local 6 30: goto 15
end local 5 end local 4 31: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 1
end local 3 end local 2 32: goto 1
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 33 1 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
10 32 2 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
2 32 3 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
14 31 4 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
15 31 5 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
20 30 6 f Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
23 30 7 v Ljava/lang/Object;
Signature: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
private java.util.concurrent.ConcurrentSkipListMap$Node<K, V> findPredecessorOfLast();
descriptor: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 1
start local 1 1: 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 3
start local 3 2: ifnull 9
3: aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Index.indexesDeletedNode:()Z
ifeq 6
4: aload 1
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Index.unlink:(Ljava/util/concurrent/ConcurrentSkipListMap$Index;)Z
pop
5: goto 0
6: 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;
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
ifnull 9
7: aload 3
astore 1
8: goto 1
9: StackMap locals:
StackMap stack:
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
dup
astore 2
start local 2 10: ifnull 12
11: aload 2
astore 1
goto 1
12: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Index 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;
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;>;
1 13 1 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
10 13 2 d Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
2 13 3 r Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
Signature: ()Ljava/util/concurrent/ConcurrentSkipListMap$Node<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;
astore 4
start local 4 3: aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 5
start local 5 4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 5
ifnonnull 9
5: iload 2
iconst_2
iand
ifeq 6
aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.isBaseHeader:()Z
ifeq 7
StackMap locals:
StackMap stack:
6: aconst_null
goto 8
StackMap locals:
StackMap stack:
7: aload 4
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$Node
8: areturn
9: StackMap locals:
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 7
start local 7 10: aload 5
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
if_acmpeq 12
11: goto 2
12: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
dup
astore 6
start local 6 13: ifnonnull 16
14: aload 5
aload 4
aload 7
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
15: goto 2
16: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object int java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 2
aload 6
aload 5
if_acmpne 18
17: goto 2
18: StackMap locals:
StackMap stack:
aload 3
aload 1
aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
invokestatic java.util.concurrent.ConcurrentSkipListMap.cpr:(Ljava/util/Comparator;Ljava/lang/Object;Ljava/lang/Object;)I
istore 8
start local 8 19: iload 8
ifne 20
iload 2
iconst_1
iand
ifne 21
20: StackMap locals: int
StackMap stack:
iload 8
ifge 22
iload 2
iconst_2
iand
ifne 22
21: StackMap locals:
StackMap stack:
aload 5
areturn
22: StackMap locals:
StackMap stack:
iload 8
ifgt 26
iload 2
iconst_2
iand
ifeq 26
23: aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.isBaseHeader:()Z
ifeq 24
aconst_null
goto 25
StackMap locals:
StackMap stack:
24: aload 4
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$Node
25: areturn
26: StackMap locals:
StackMap stack:
aload 5
astore 4
27: aload 7
astore 5
end local 8 end local 7 end local 6 28: goto 4
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 29 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 29 1 key TK;
0 29 2 rel I
0 29 3 cmp Ljava/util/Comparator<-TK;>;
3 29 4 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 29 5 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
13 28 6 v Ljava/lang/Object;
10 28 7 f Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
19 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> getNear(K, int);
descriptor: (Ljava/lang/Object;I)Ljava/util/AbstractMap$SimpleImmutableEntry;
flags: (0x0010) ACC_FINAL
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
astore 3
start local 3 1: StackMap locals: java.util.Comparator
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;
astore 4
start local 4 2: aload 4
ifnonnull 4
3: aconst_null
areturn
4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.createSnapshot:()Ljava/util/AbstractMap$SimpleImmutableEntry;
astore 5
start local 5 5: aload 5
ifnull 1
6: aload 5
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 7 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 7 1 key TK;
0 7 2 rel I
1 7 3 cmp Ljava/util/Comparator<-TK;>;
2 7 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 7 5 e Ljava/util/AbstractMap$SimpleImmutableEntry<TK;TV;>;
Signature: (TK;I)Ljava/util/AbstractMap$SimpleImmutableEntry<TK;TV;>;
MethodParameters:
Name Flags
key
rel
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: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.initialize:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 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: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.initialize:()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 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
invokevirtual java.util.concurrent.ConcurrentSkipListMap.initialize:()V
3: aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.putAll:(Ljava/util/Map;)V
4: return
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 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
invokevirtual java.util.concurrent.ConcurrentSkipListMap.initialize:()V
3: aload 0
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.buildFromSorted:(Ljava/util/SortedMap;)V
4: return
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 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
invokevirtual java.util.concurrent.ConcurrentSkipListMap.initialize:()V
3: aload 1
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.buildFromSorted:(Ljava/util/SortedMap;)V
4: aload 1
5: areturn
end local 1 6: StackMap locals:
StackMap stack: java.lang.CloneNotSupportedException
pop
7: new java.lang.InternalError
dup
invokespecial java.lang.InternalError.<init>:()V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
2 6 1 clone Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Exception table:
from to target type
0 5 6 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=6, locals=15, 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.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 2
start local 2 3: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
start local 3 4: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 5: iconst_0
istore 5
start local 5 6: goto 9
7: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.SortedMap java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.ArrayList int
StackMap stack:
aload 4
aconst_null
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
8: iinc 5 1
StackMap locals:
StackMap stack:
9: iload 5
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
if_icmple 7
end local 5 10: aload 2
astore 5
start local 5 11: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
istore 6
start local 6 12: goto 16
13: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.SortedMap java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.ArrayList java.util.concurrent.ConcurrentSkipListMap$Index int
StackMap stack:
aload 4
iload 6
aload 5
invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
pop
14: aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 5
15: iinc 6 -1
StackMap locals:
StackMap stack:
16: iload 6
ifgt 13
end local 6 17: aload 1
invokeinterface java.util.SortedMap.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
18: astore 6
start local 6 19: goto 48
20: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.SortedMap java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.ArrayList java.util.concurrent.ConcurrentSkipListMap$Index java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 7
start local 7 21: invokestatic java.util.concurrent.ThreadLocalRandom.current:()Ljava/util/concurrent/ThreadLocalRandom;
invokevirtual java.util.concurrent.ThreadLocalRandom.nextInt:()I
istore 8
start local 8 22: iconst_0
istore 9
start local 9 23: iload 8
ldc -2147483647
iand
ifne 27
24: StackMap locals: java.util.Map$Entry int int
StackMap stack:
iinc 9 1
25: iload 8
iconst_1
iushr
dup
istore 8
iconst_1
iand
ifne 24
26: iload 9
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
if_icmple 27
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
iconst_1
iadd
istore 9
27: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
astore 10
start local 10 28: aload 7
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
astore 11
start local 11 29: aload 10
ifnull 30
aload 11
ifnonnull 31
30: StackMap locals: java.lang.Object java.lang.Object
StackMap stack:
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
31: StackMap locals:
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aload 10
aload 11
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
astore 12
start local 12 32: aload 3
aload 12
putfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
33: aload 12
astore 3
34: iload 9
ifle 48
35: aconst_null
astore 13
start local 13 36: iconst_1
istore 14
start local 14 37: goto 47
38: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Index int
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 12
aload 13
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 13
39: iload 14
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
if_icmple 41
40: new java.util.concurrent.ConcurrentSkipListMap$HeadIndex
dup
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
aload 2
aload 13
iload 14
invokespecial java.util.concurrent.ConcurrentSkipListMap$HeadIndex.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;I)V
astore 2
41: StackMap locals:
StackMap stack:
iload 14
aload 4
invokevirtual java.util.ArrayList.size:()I
if_icmpge 45
42: aload 4
iload 14
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast java.util.concurrent.ConcurrentSkipListMap$Index
aload 13
putfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
43: aload 4
iload 14
aload 13
invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
pop
44: goto 46
45: StackMap locals:
StackMap stack:
aload 4
aload 13
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
46: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
47: iload 14
iload 9
if_icmple 38
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 48: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.SortedMap java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.ArrayList java.util.concurrent.ConcurrentSkipListMap$Index java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 20
49: aload 0
aload 2
putfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
50: 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 51 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 51 1 map Ljava/util/SortedMap<TK;+TV;>;
3 51 2 h Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
4 51 3 basepred Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 51 4 preds Ljava/util/ArrayList<Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;>;
6 10 5 i I
11 51 5 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
12 17 6 i I
19 51 6 it Ljava/util/Iterator<+Ljava/util/Map$Entry<+TK;+TV;>;>;
21 48 7 e Ljava/util/Map$Entry<+TK;+TV;>;
22 48 8 rnd I
23 48 9 j I
28 48 10 k TK;
29 48 11 v TV;
32 48 12 z Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
36 48 13 idx Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
37 48 14 i I
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=4, 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.findFirst:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 2: goto 8
3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.getValidValue:()Ljava/lang/Object;
astore 3
start local 3 4: aload 3
ifnull 7
5: aload 1
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
6: aload 1
aload 3
invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
end local 3 7: StackMap locals:
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
StackMap locals:
StackMap stack:
8: aload 2
ifnonnull 3
end local 2 9: aload 1
aconst_null
invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
10: return
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 s Ljava/io/ObjectOutputStream;
2 9 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
4 7 3 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=6, locals=15, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
1: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.initialize:()V
2: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 2
start local 2 3: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
start local 3 4: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 5: iconst_0
istore 5
start local 5 6: goto 9
7: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.io.ObjectInputStream java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.ArrayList int
StackMap stack:
aload 4
aconst_null
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
8: iinc 5 1
StackMap locals:
StackMap stack:
9: iload 5
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
if_icmple 7
end local 5 10: aload 2
astore 5
start local 5 11: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
istore 6
start local 6 12: goto 16
13: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.io.ObjectInputStream java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.ArrayList java.util.concurrent.ConcurrentSkipListMap$Index int
StackMap stack:
aload 4
iload 6
aload 5
invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
pop
14: aload 5
getfield java.util.concurrent.ConcurrentSkipListMap$Index.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
astore 5
15: iinc 6 -1
StackMap locals:
StackMap stack:
16: iload 6
ifgt 13
end local 6 17: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
astore 6
start local 6 18: aload 6
ifnonnull 20
19: goto 49
20: StackMap locals: java.lang.Object
StackMap stack:
aload 1
invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
astore 7
start local 7 21: aload 7
ifnonnull 23
22: new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
23: StackMap locals: java.lang.Object
StackMap stack:
aload 6
astore 8
start local 8 24: aload 7
astore 9
start local 9 25: invokestatic java.util.concurrent.ThreadLocalRandom.current:()Ljava/util/concurrent/ThreadLocalRandom;
invokevirtual java.util.concurrent.ThreadLocalRandom.nextInt:()I
istore 10
start local 10 26: iconst_0
istore 11
start local 11 27: iload 10
ldc -2147483647
iand
ifne 31
28: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.io.ObjectInputStream java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.ArrayList java.util.concurrent.ConcurrentSkipListMap$Index java.lang.Object java.lang.Object java.lang.Object java.lang.Object int int
StackMap stack:
iinc 11 1
29: iload 10
iconst_1
iushr
dup
istore 10
iconst_1
iand
ifne 28
30: iload 11
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
if_icmple 31
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
iconst_1
iadd
istore 11
31: StackMap locals:
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$Node
dup
aload 8
aload 9
aconst_null
invokespecial java.util.concurrent.ConcurrentSkipListMap$Node.<init>:(Ljava/lang/Object;Ljava/lang/Object;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
astore 12
start local 12 32: aload 3
aload 12
putfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
33: aload 12
astore 3
34: iload 11
ifle 17
35: aconst_null
astore 13
start local 13 36: iconst_1
istore 14
start local 14 37: goto 47
38: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Index int
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$Index
dup
aload 12
aload 13
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 13
39: iload 14
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.level:I
if_icmple 41
40: new java.util.concurrent.ConcurrentSkipListMap$HeadIndex
dup
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
aload 2
aload 13
iload 14
invokespecial java.util.concurrent.ConcurrentSkipListMap$HeadIndex.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Index;I)V
astore 2
41: StackMap locals:
StackMap stack:
iload 14
aload 4
invokevirtual java.util.ArrayList.size:()I
if_icmpge 45
42: aload 4
iload 14
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast java.util.concurrent.ConcurrentSkipListMap$Index
aload 13
putfield java.util.concurrent.ConcurrentSkipListMap$Index.right:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
43: aload 4
iload 14
aload 13
invokevirtual java.util.ArrayList.set:(ILjava/lang/Object;)Ljava/lang/Object;
pop
44: goto 46
45: StackMap locals:
StackMap stack:
aload 4
aload 13
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
46: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
47: iload 14
iload 11
if_icmple 38
end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 48: goto 17
49: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.io.ObjectInputStream java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.ArrayList java.util.concurrent.ConcurrentSkipListMap$Index
StackMap stack:
aload 0
aload 2
putfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
50: return
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 51 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 51 1 s Ljava/io/ObjectInputStream;
3 51 2 h Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
4 51 3 basepred Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 51 4 preds Ljava/util/ArrayList<Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;>;
6 10 5 i I
11 51 5 q Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
12 17 6 i I
18 48 6 k Ljava/lang/Object;
21 48 7 v Ljava/lang/Object;
24 48 8 key TK;
25 48 9 val TV;
26 48 10 rnd I
27 48 11 j I
32 48 12 z Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
36 48 13 idx Ljava/util/concurrent/ConcurrentSkipListMap$Index<TK;TV;>;
37 48 14 i I
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=4, 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.findFirst:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
start local 2 3: goto 8
4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.getValidValue:()Ljava/lang/Object;
astore 3
start local 3 5: aload 3
ifnull 7
aload 1
aload 3
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 7
6: iconst_1
ireturn
end local 3 7: StackMap locals:
StackMap stack:
aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 2
StackMap locals:
StackMap stack:
8: aload 2
ifnonnull 4
end local 2 9: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 10 1 value Ljava/lang/Object;
3 9 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 7 3 v TV;
MethodParameters:
Name Flags
value
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=1
start local 0 0: lconst_0
lstore 1
start local 1 1: aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findFirst:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
start local 3 2: goto 6
3: StackMap locals: long java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.getValidValue:()Ljava/lang/Object;
ifnull 5
4: lload 1
lconst_1
ladd
lstore 1
5: StackMap locals:
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
StackMap locals:
StackMap stack:
6: aload 3
ifnonnull 3
end local 3 7: lload 1
ldc 2147483647
lcmp
iflt 8
ldc 2147483647
goto 9
StackMap locals:
StackMap stack:
8: lload 1
l2i
StackMap locals:
StackMap stack: int
9: ireturn
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 count J
2 7 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
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=3, locals=7, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
astore 3
start local 3 1: aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.down:Ljava/util/concurrent/ConcurrentSkipListMap$Index;
checkcast java.util.concurrent.ConcurrentSkipListMap$HeadIndex
astore 4
start local 4 2: aload 4
ifnull 4
3: aload 0
aload 3
aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap.casHead:(Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;)Z
pop
goto 0
4: StackMap locals: java.util.concurrent.ConcurrentSkipListMap top top java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$HeadIndex
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 1
start local 1 5: ifnull 15
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 2
start local 2 6: ifnull 15
7: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 5
start local 5 8: aload 2
aload 1
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
if_acmpne 0
9: aload 2
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
astore 6
start local 6 10: aload 6
ifnonnull 12
11: aload 2
aload 1
aload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
goto 0
12: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.lang.Object
StackMap stack:
aload 2
aload 6
aconst_null
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 0
aload 2
aload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.appendMarker:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
ifeq 0
13: aload 1
aload 2
aload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casNext:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)Z
pop
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 14: goto 0
15: StackMap locals: java.util.concurrent.ConcurrentSkipListMap
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
5 14 1 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
6 14 2 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
1 14 3 h Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
2 14 4 d Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
8 14 5 f Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
10 14 6 v Ljava/lang/Object;
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=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 1
aload 2
ifnonnull 11
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.value:Ljava/lang/Object;
dup
astore 4
start local 4 3: ifnull 11
4: aload 4
astore 5
start local 5 5: aload 2
aload 1
aload 5
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 6
start local 6 6: aload 6
ifnull 9
7: aload 3
aload 5
aload 6
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 11
8: aload 6
areturn
9: StackMap locals: java.lang.Object 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 11
10: goto 13
end local 6 end local 5 end local 4 end local 3 11: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.function.BiFunction
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 12: ifnonnull 2
13: 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 14 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 14 1 key TK;
0 14 2 remappingFunction Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
2 11 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
12 14 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
3 11 4 v Ljava/lang/Object;
5 11 5 vv TV;
6 11 6 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=7, 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 17
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.value:Ljava/lang/Object;
dup
astore 4
start local 4 10: ifnull 2
11: aload 4
astore 6
start local 6 12: aload 2
aload 1
aload 6
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
dup
astore 5
start local 5 13: ifnull 16
14: aload 3
aload 6
aload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 2
15: aload 5
areturn
16: StackMap locals: java.lang.Object java.lang.Object java.lang.Object
StackMap stack:
aload 0
aload 1
aload 6
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doRemove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
ifnull 2
end local 6 end local 5 end local 4 end local 3 17: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.function.BiFunction
StackMap stack:
aconst_null
areturn
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 TK;
0 18 2 remappingFunction Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
3 17 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
10 17 4 v Ljava/lang/Object;
5 9 5 r TV;
13 17 5 r TV;
12 17 6 vv 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=8, 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.value:Ljava/lang/Object;
dup
astore 5
start local 5 7: ifnull 2
8: aload 5
astore 7
start local 7 9: aload 3
aload 7
aload 2
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
dup
astore 6
start local 6 10: ifnull 13
11: aload 4
aload 7
aload 6
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 2
12: aload 6
areturn
13: StackMap locals: java.lang.Object java.lang.Object java.lang.Object
StackMap stack:
aload 0
aload 1
aload 7
invokevirtual java.util.concurrent.ConcurrentSkipListMap.doRemove:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
ifnull 2
14: aconst_null
areturn
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 15 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 15 1 key TK;
0 15 2 value TV;
0 15 3 remappingFunction Ljava/util/function/BiFunction<-TV;-TV;+TV;>;
3 15 4 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
7 15 5 v Ljava/lang/Object;
10 15 6 r TV;
9 15 7 vv 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;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
goto 3
StackMap locals: java.util.concurrent.ConcurrentSkipListMap$KeySet
StackMap stack:
2: 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;
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$KeySet
3: 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 ks Ljava/util/concurrent/ConcurrentSkipListMap$KeySet<TK;>;
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;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
goto 3
StackMap locals: java.util.concurrent.ConcurrentSkipListMap$KeySet
StackMap stack:
2: 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;
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$KeySet
3: 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 ks Ljava/util/concurrent/ConcurrentSkipListMap$KeySet<TK;>;
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;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
goto 3
StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Values
StackMap stack:
2: 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;
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$Values
3: 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 vs Ljava/util/concurrent/ConcurrentSkipListMap$Values<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;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
goto 3
StackMap locals: java.util.concurrent.ConcurrentSkipListMap$EntrySet
StackMap stack:
2: 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;
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentSkipListMap$EntrySet
3: 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 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/ConcurrentNavigableMap;
astore 1
start local 1 1: aload 1
ifnull 2
aload 1
goto 5
StackMap locals: java.util.concurrent.ConcurrentNavigableMap
StackMap stack:
2: aload 0
new java.util.concurrent.ConcurrentSkipListMap$SubMap
dup
3: 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/ConcurrentNavigableMap;
StackMap locals:
StackMap stack: java.util.concurrent.ConcurrentNavigableMap
5: areturn
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 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=7, 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
invokevirtual java.util.concurrent.ConcurrentSkipListMap.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 9
StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map top java.util.Iterator
StackMap stack:
6: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 3
start local 3 7: aload 3
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
aload 2
aload 3
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 9
8: iconst_0
ireturn
end local 3 9: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
10: aload 2
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 4
goto 16
StackMap locals:
StackMap stack:
11: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 3
start local 3 12: aload 3
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
astore 5
start local 5 13: aload 3
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
astore 6
start local 6 14: aload 5
ifnull 15
aload 6
ifnull 15
aload 6
aload 0
aload 5
invokevirtual java.util.concurrent.ConcurrentSkipListMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 16
15: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map java.util.Map$Entry java.util.Iterator java.lang.Object java.lang.Object
StackMap stack:
iconst_0
ireturn
end local 6 end local 5 end local 3 16: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
17: iconst_1
ireturn
18: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.lang.Object java.util.Map
StackMap stack: java.lang.ClassCastException
pop
19: iconst_0
ireturn
20: StackMap locals:
StackMap stack: java.lang.NullPointerException
pop
21: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 22 1 o Ljava/lang/Object;
5 22 2 m Ljava/util/Map<**>;
7 9 3 e Ljava/util/Map$Entry<TK;TV;>;
12 16 3 e Ljava/util/Map$Entry<**>;
13 16 5 k Ljava/lang/Object;
14 16 6 v Ljava/lang/Object;
Exception table:
from to target type
5 8 18 Class java.lang.ClassCastException
9 15 18 Class java.lang.ClassCastException
16 17 18 Class java.lang.ClassCastException
5 8 20 Class java.lang.NullPointerException
9 15 20 Class java.lang.NullPointerException
16 17 20 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=3, 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.value: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:
aload 4
aload 5
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(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 Ljava/lang/Object;
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=3, 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 5
4: aconst_null
areturn
5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
dup
astore 4
start local 4 6: ifnull 2
aload 3
aload 4
aload 2
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 2
7: aload 4
astore 5
start local 5 8: aload 5
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 9 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 9 1 key TK;
0 9 2 value TV;
3 9 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
6 9 4 v Ljava/lang/Object;
8 9 5 vv 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=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_2
invokevirtual java.util.concurrent.ConcurrentSkipListMap.getNear:(Ljava/lang/Object;I)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=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_3
invokevirtual java.util.concurrent.ConcurrentSkipListMap.getNear:(Ljava/lang/Object;I)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=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokevirtual java.util.concurrent.ConcurrentSkipListMap.getNear:(Ljava/lang/Object;I)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=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.getNear:(Ljava/lang/Object;I)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=3, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.concurrent.ConcurrentSkipListMap.findFirst:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.createSnapshot:()Ljava/util/AbstractMap$SimpleImmutableEntry;
astore 2
start local 2 4: aload 2
ifnull 0
5: aload 2
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 e Ljava/util/AbstractMap$SimpleImmutableEntry<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=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;
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 1
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.createSnapshot:()Ljava/util/AbstractMap$SimpleImmutableEntry;
astore 2
start local 2 4: aload 2
ifnull 0
5: aload 2
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 e Ljava/util/AbstractMap$SimpleImmutableEntry<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/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;>;
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;>;
java.util.Iterator<K> keyIterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.concurrent.ConcurrentSkipListMap$KeyIterator
dup
aload 0
invokespecial java.util.concurrent.ConcurrentSkipListMap$KeyIterator.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Signature: ()Ljava/util/Iterator<TK;>;
java.util.Iterator<V> valueIterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.concurrent.ConcurrentSkipListMap$ValueIterator
dup
aload 0
invokespecial java.util.concurrent.ConcurrentSkipListMap$ValueIterator.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Signature: ()Ljava/util/Iterator<TV;>;
java.util.Iterator<java.util.Map$Entry<K, V>> entryIterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.util.concurrent.ConcurrentSkipListMap$EntryIterator
dup
aload 0
invokespecial java.util.concurrent.ConcurrentSkipListMap$EntryIterator.<init>:(Ljava/util/concurrent/ConcurrentSkipListMap;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
Signature: ()Ljava/util/Iterator<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=4, 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.findFirst:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
start local 3 2: goto 7
3: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.function.BiConsumer top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.getValidValue:()Ljava/lang/Object;
dup
astore 2
start local 2 4: ifnull 6
5: aload 1
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
aload 2
invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
6: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.function.BiConsumer java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
end local 2 StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.function.BiConsumer top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
7: aload 3
ifnonnull 3
end local 3 8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
0 9 1 action Ljava/util/function/BiConsumer<-TK;-TV;>;
4 7 2 v TV;
2 8 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;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=3, 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.findFirst:()Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
start local 3 3: goto 11
start local 2 4: StackMap locals: java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 1
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.key:Ljava/lang/Object;
aload 2
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
astore 4
start local 4 5: aload 4
ifnonnull 6
new java.lang.NullPointerException
dup
invokespecial java.lang.NullPointerException.<init>:()V
athrow
6: StackMap locals: java.lang.Object
StackMap stack:
aload 3
aload 2
aload 4
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.casValue:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 8
7: goto 10
end local 4 end local 2 8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.function.BiFunction top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.getValidValue:()Ljava/lang/Object;
dup
astore 2
start local 2 9: ifnonnull 4
10: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.function.BiFunction java.lang.Object java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 3
end local 2 StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.function.BiFunction top java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
11: aload 3
ifnonnull 8
end local 3 12: return
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 function Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
4 8 2 v TV;
9 11 2 v TV;
3 12 3 n Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
5 8 4 r TV;
Signature: (Ljava/util/function/BiFunction<-TK;-TV;+TV;>;)V
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=7, locals=5, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
astore 1
start local 1 1: StackMap locals: java.util.Comparator
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
dup
astore 2
start local 2 2: getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 4
start local 4 3: aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 4: ifnull 5
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 9
5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$KeySpliterator
dup
aload 1
aload 2
aload 3
aconst_null
aload 3
ifnonnull 7
6: iconst_0
goto 8
StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack: new 5 new 5 java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node null
7: ldc 2147483647
8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack: new 5 new 5 java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node null int
invokespecial java.util.concurrent.ConcurrentSkipListMap$KeySpliterator.<init>:(Ljava/util/Comparator;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;I)V
areturn
9: StackMap locals:
StackMap stack:
aload 3
aload 4
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
end local 4 end local 3 end local 2 10: goto 1
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 11 1 cmp Ljava/util/Comparator<-TK;>;
2 10 2 h Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
4 10 3 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
3 10 4 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
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=7, locals=5, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
astore 1
start local 1 1: StackMap locals: java.util.Comparator
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
dup
astore 2
start local 2 2: getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 4
start local 4 3: aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 4: ifnull 5
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 9
5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$ValueSpliterator
dup
aload 1
aload 2
aload 3
aconst_null
aload 3
ifnonnull 7
6: iconst_0
goto 8
StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack: new 5 new 5 java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node null
7: ldc 2147483647
8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack: new 5 new 5 java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node null int
invokespecial java.util.concurrent.ConcurrentSkipListMap$ValueSpliterator.<init>:(Ljava/util/Comparator;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;I)V
areturn
9: StackMap locals:
StackMap stack:
aload 3
aload 4
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
end local 4 end local 3 end local 2 10: goto 1
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 11 1 cmp Ljava/util/Comparator<-TK;>;
2 10 2 h Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
4 10 3 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
3 10 4 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
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=7, locals=5, args_size=1
start local 0 0: aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.comparator:Ljava/util/Comparator;
astore 1
start local 1 1: StackMap locals: java.util.Comparator
StackMap stack:
aload 0
getfield java.util.concurrent.ConcurrentSkipListMap.head:Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex;
dup
astore 2
start local 2 2: getfield java.util.concurrent.ConcurrentSkipListMap$HeadIndex.node:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
astore 4
start local 4 3: aload 4
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
dup
astore 3
start local 3 4: ifnull 5
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.value:Ljava/lang/Object;
ifnull 9
5: StackMap locals: java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack:
new java.util.concurrent.ConcurrentSkipListMap$EntrySpliterator
dup
aload 1
aload 2
aload 3
aconst_null
aload 3
ifnonnull 7
6: iconst_0
goto 8
StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack: new 5 new 5 java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node null
7: ldc 2147483647
8: StackMap locals: java.util.concurrent.ConcurrentSkipListMap java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node java.util.concurrent.ConcurrentSkipListMap$Node
StackMap stack: new 5 new 5 java.util.Comparator java.util.concurrent.ConcurrentSkipListMap$HeadIndex java.util.concurrent.ConcurrentSkipListMap$Node null int
invokespecial java.util.concurrent.ConcurrentSkipListMap$EntrySpliterator.<init>:(Ljava/util/Comparator;Ljava/util/concurrent/ConcurrentSkipListMap$Index;Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/lang/Object;I)V
areturn
9: StackMap locals:
StackMap stack:
aload 3
aload 4
aload 3
getfield java.util.concurrent.ConcurrentSkipListMap$Node.next:Ljava/util/concurrent/ConcurrentSkipListMap$Node;
invokevirtual java.util.concurrent.ConcurrentSkipListMap$Node.helpDelete:(Ljava/util/concurrent/ConcurrentSkipListMap$Node;Ljava/util/concurrent/ConcurrentSkipListMap$Node;)V
end local 4 end local 3 end local 2 10: goto 1
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljava/util/concurrent/ConcurrentSkipListMap<TK;TV;>;
1 11 1 cmp Ljava/util/Comparator<-TK;>;
2 10 2 h Ljava/util/concurrent/ConcurrentSkipListMap$HeadIndex<TK;TV;>;
4 10 3 p Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
3 10 4 b Ljava/util/concurrent/ConcurrentSkipListMap$Node<TK;TV;>;
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$HeadIndex 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 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 HeadIndex = java.util.concurrent.ConcurrentSkipListMap$HeadIndex of java.util.concurrent.ConcurrentSkipListMap
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