class com.google.common.collect.CompactHashMap<K, V> extends java.util.AbstractMap<K, V> implements java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.google.common.collect.CompactHashMap
super_class: java.util.AbstractMap
{
private static final int MAXIMUM_CAPACITY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1073741824
static final float DEFAULT_LOAD_FACTOR;
descriptor: F
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1.0
private static final long NEXT_MASK;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4294967295
private static final long HASH_MASK;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -4294967296
static final int DEFAULT_SIZE;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 3
static final int UNSET;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: -1
private transient int[] table;
descriptor: [I
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
RuntimeVisibleTypeAnnotations:
FIELD
org.checkerframework.checker.nullness.qual.MonotonicNonNull()
transient long[] entries;
descriptor: [J
flags: (0x0080) ACC_TRANSIENT
RuntimeInvisibleAnnotations:
com.google.common.annotations.VisibleForTesting()
RuntimeVisibleTypeAnnotations:
FIELD
org.checkerframework.checker.nullness.qual.MonotonicNonNull()
RuntimeInvisibleTypeAnnotations:
FIELD, location=[ARRAY_ELEMENT]
com.google.common.annotations.VisibleForTesting()
transient java.lang.Object[] keys;
descriptor: [Ljava/lang/Object;
flags: (0x0080) ACC_TRANSIENT
RuntimeInvisibleAnnotations:
com.google.common.annotations.VisibleForTesting()
RuntimeVisibleTypeAnnotations:
FIELD
org.checkerframework.checker.nullness.qual.MonotonicNonNull()
RuntimeInvisibleTypeAnnotations:
FIELD, location=[ARRAY_ELEMENT]
com.google.common.annotations.VisibleForTesting()
transient java.lang.Object[] values;
descriptor: [Ljava/lang/Object;
flags: (0x0080) ACC_TRANSIENT
RuntimeInvisibleAnnotations:
com.google.common.annotations.VisibleForTesting()
RuntimeVisibleTypeAnnotations:
FIELD
org.checkerframework.checker.nullness.qual.MonotonicNonNull()
RuntimeInvisibleTypeAnnotations:
FIELD, location=[ARRAY_ELEMENT]
com.google.common.annotations.VisibleForTesting()
transient float loadFactor;
descriptor: F
flags: (0x0080) ACC_TRANSIENT
transient int modCount;
descriptor: I
flags: (0x0080) ACC_TRANSIENT
private transient int threshold;
descriptor: I
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient int size;
descriptor: I
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient java.util.Set<K> keySetView;
descriptor: Ljava/util/Set;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/Set<TK;>;
RuntimeVisibleTypeAnnotations:
FIELD
org.checkerframework.checker.nullness.qual.MonotonicNonNull()
private transient java.util.Set<java.util.Map$Entry<K, V>> entrySetView;
descriptor: Ljava/util/Set;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;
RuntimeVisibleTypeAnnotations:
FIELD
org.checkerframework.checker.nullness.qual.MonotonicNonNull()
private transient java.util.Collection<V> valuesView;
descriptor: Ljava/util/Collection;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/util/Collection<TV;>;
RuntimeVisibleTypeAnnotations:
FIELD
org.checkerframework.checker.nullness.qual.MonotonicNonNull()
public static <K, V> com.google.common.collect.CompactHashMap<K, V> create();
descriptor: ()Lcom/google/common/collect/CompactHashMap;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.google.common.collect.CompactHashMap
dup
invokespecial com.google.common.collect.CompactHashMap.<init>:()V
areturn
LocalVariableTable:
Start End Slot Name Signature
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>()Lcom/google/common/collect/CompactHashMap<TK;TV;>;
public static <K, V> com.google.common.collect.CompactHashMap<K, V> createWithExpectedSize(int);
descriptor: (I)Lcom/google/common/collect/CompactHashMap;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.google.common.collect.CompactHashMap
dup
iload 0
invokespecial com.google.common.collect.CompactHashMap.<init>:(I)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 expectedSize I
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>(I)Lcom/google/common/collect/CompactHashMap<TK;TV;>;
MethodParameters:
Name Flags
expectedSize
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.util.AbstractMap.<init>:()V
1: aload 0
iconst_3
fconst_1
invokevirtual com.google.common.collect.CompactHashMap.init:(IF)V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
void <init>(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
fconst_1
invokespecial com.google.common.collect.CompactHashMap.<init>:(IF)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 2 1 capacity I
MethodParameters:
Name Flags
capacity
void <init>(int, float);
descriptor: (IF)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.util.AbstractMap.<init>:()V
1: aload 0
iload 1
fload 2
invokevirtual com.google.common.collect.CompactHashMap.init:(IF)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 3 1 expectedSize I
0 3 2 loadFactor F
MethodParameters:
Name Flags
expectedSize
loadFactor
void init(int, float);
descriptor: (IF)V
flags: (0x0000)
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 1
iflt 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ldc "Initial capacity must be non-negative"
invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/Object;)V
3: fload 2
fconst_0
fcmpl
ifle 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
StackMap locals:
StackMap stack: int
5: ldc "Illegal load factor"
invokestatic com.google.common.base.Preconditions.checkArgument:(ZLjava/lang/Object;)V
6: iload 1
fload 2
f2d
invokestatic com.google.common.collect.Hashing.closedTableSize:(ID)I
istore 3
start local 3 7: aload 0
iload 3
invokestatic com.google.common.collect.CompactHashMap.newTable:(I)[I
putfield com.google.common.collect.CompactHashMap.table:[I
8: aload 0
fload 2
putfield com.google.common.collect.CompactHashMap.loadFactor:F
9: aload 0
iload 1
anewarray java.lang.Object
putfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
10: aload 0
iload 1
anewarray java.lang.Object
putfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
11: aload 0
iload 1
invokestatic com.google.common.collect.CompactHashMap.newEntries:(I)[J
putfield com.google.common.collect.CompactHashMap.entries:[J
12: aload 0
iconst_1
iload 3
i2f
fload 2
fmul
f2i
invokestatic java.lang.Math.max:(II)I
putfield com.google.common.collect.CompactHashMap.threshold:I
13: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 14 1 expectedSize I
0 14 2 loadFactor F
7 14 3 buckets I
MethodParameters:
Name Flags
expectedSize
loadFactor
private static int[] newTable(int);
descriptor: (I)[I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: iload 0
newarray 10
astore 1
start local 1 1: aload 1
iconst_m1
invokestatic java.util.Arrays.fill:([II)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 size I
1 3 1 array [I
MethodParameters:
Name Flags
size
private static long[] newEntries(int);
descriptor: (I)[J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: iload 0
newarray 11
astore 1
start local 1 1: aload 1
ldc -1
invokestatic java.util.Arrays.fill:([JJ)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 size I
1 3 1 array [J
MethodParameters:
Name Flags
size
private int hashTableMask();
descriptor: ()I
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
arraylength
iconst_1
isub
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
private static int getHash(long);
descriptor: (J)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: lload 0
bipush 32
lushr
l2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 entry J
MethodParameters:
Name Flags
entry
private static int getNext(long);
descriptor: (J)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: lload 0
l2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 entry J
MethodParameters:
Name Flags
entry
private static long swapNext(long, int);
descriptor: (JI)J
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 2 0: ldc -4294967296
lload 0
land
ldc 4294967295
iload 2
i2l
land
lor
lreturn
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 entry J
0 1 2 newNext I
MethodParameters:
Name Flags
entry
newNext
void accessEntry(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 1 1 index I
MethodParameters:
Name Flags
index
public V put(K, );
descriptor: (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=14, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
astore 3
start local 3 1: aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
astore 4
start local 4 2: aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
astore 5
start local 5 3: aload 1
invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
istore 6
start local 6 4: iload 6
aload 0
invokevirtual com.google.common.collect.CompactHashMap.hashTableMask:()I
iand
istore 7
start local 7 5: aload 0
getfield com.google.common.collect.CompactHashMap.size:I
istore 8
start local 8 6: aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
iload 7
iaload
istore 9
start local 9 7: iload 9
iconst_m1
if_icmpne 10
8: aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
iload 7
iload 8
iastore
9: goto 20
10: StackMap locals: com.google.common.collect.CompactHashMap java.lang.Object java.lang.Object long[] java.lang.Object[] java.lang.Object[] int int int int
StackMap stack:
iload 9
istore 10
start local 10 11: aload 3
iload 9
laload
lstore 11
start local 11 12: lload 11
invokestatic com.google.common.collect.CompactHashMap.getHash:(J)I
iload 6
if_icmpne 17
aload 1
aload 4
iload 9
aaload
invokestatic com.google.common.base.Objects.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 17
13: aload 5
iload 9
aaload
astore 13
start local 13 14: aload 5
iload 9
aload 2
aastore
15: aload 0
iload 9
invokevirtual com.google.common.collect.CompactHashMap.accessEntry:(I)V
16: aload 13
areturn
end local 13 17: StackMap locals: int long
StackMap stack:
lload 11
invokestatic com.google.common.collect.CompactHashMap.getNext:(J)I
istore 9
18: iload 9
iconst_m1
if_icmpne 10
19: aload 3
iload 10
lload 11
iload 8
invokestatic com.google.common.collect.CompactHashMap.swapNext:(JI)J
lastore
end local 11 end local 10 20: StackMap locals:
StackMap stack:
iload 8
ldc 2147483647
if_icmpne 22
21: new java.lang.IllegalStateException
dup
ldc "Cannot contain more than Integer.MAX_VALUE elements!"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
22: StackMap locals:
StackMap stack:
iload 8
iconst_1
iadd
istore 10
start local 10 23: aload 0
iload 10
invokevirtual com.google.common.collect.CompactHashMap.resizeMeMaybe:(I)V
24: aload 0
iload 8
aload 1
aload 2
iload 6
invokevirtual com.google.common.collect.CompactHashMap.insertEntry:(ILjava/lang/Object;Ljava/lang/Object;I)V
25: aload 0
iload 10
putfield com.google.common.collect.CompactHashMap.size:I
26: iload 8
aload 0
getfield com.google.common.collect.CompactHashMap.threshold:I
if_icmplt 28
27: aload 0
iconst_2
aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
arraylength
imul
invokevirtual com.google.common.collect.CompactHashMap.resizeTable:(I)V
28: StackMap locals: int
StackMap stack:
aload 0
dup
getfield com.google.common.collect.CompactHashMap.modCount:I
iconst_1
iadd
putfield com.google.common.collect.CompactHashMap.modCount:I
29: aconst_null
areturn
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 30 1 key TK;
0 30 2 value TV;
1 30 3 entries [J
2 30 4 keys [Ljava/lang/Object;
3 30 5 values [Ljava/lang/Object;
4 30 6 hash I
5 30 7 tableIndex I
6 30 8 newEntryIndex I
7 30 9 next I
11 20 10 last I
12 20 11 entry J
14 17 13 oldValue TV;
23 30 10 newSize I
Signature: (TK;TV;)TV;
RuntimeInvisibleAnnotations:
com.google.errorprone.annotations.CanIgnoreReturnValue()
RuntimeVisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
org.checkerframework.checker.nullness.qual.Nullable()
METHOD_FORMAL_PARAMETER
org.checkerframework.checker.nullness.qual.Nullable()
METHOD_RETURN
org.checkerframework.checker.nullness.qual.Nullable()
LOCAL_VARIABLE, {start=14, end=17, index=13}
org.checkerframework.checker.nullness.qual.Nullable()
MethodParameters:
Name Flags
key
value
void insertEntry(int, K, V, );
descriptor: (ILjava/lang/Object;Ljava/lang/Object;I)V
flags: (0x0000)
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 1
iload 4
i2l
bipush 32
lshl
ldc 4294967295
lor
lastore
1: aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 1
aload 2
aastore
2: aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 1
aload 3
aastore
3: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 4 1 entryIndex I
0 4 2 key TK;
0 4 3 value TV;
0 4 4 hash I
Signature: (ITK;TV;I)V
RuntimeVisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
org.checkerframework.checker.nullness.qual.Nullable()
METHOD_FORMAL_PARAMETER
org.checkerframework.checker.nullness.qual.Nullable()
MethodParameters:
Name Flags
entryIndex
key
value
hash
private void resizeMeMaybe(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
arraylength
istore 2
start local 2 1: iload 1
iload 2
if_icmple 7
2: iload 2
iconst_1
iload 2
iconst_1
iushr
invokestatic java.lang.Math.max:(II)I
iadd
istore 3
start local 3 3: iload 3
ifge 5
4: ldc 2147483647
istore 3
5: StackMap locals: int int
StackMap stack:
iload 3
iload 2
if_icmpeq 7
6: aload 0
iload 3
invokevirtual com.google.common.collect.CompactHashMap.resizeEntries:(I)V
end local 3 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 Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 8 1 newSize I
1 8 2 entriesSize I
3 7 3 newCapacity I
MethodParameters:
Name Flags
newSize
void resizeEntries(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 1
invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
putfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
1: aload 0
aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 1
invokestatic java.util.Arrays.copyOf:([Ljava/lang/Object;I)[Ljava/lang/Object;
putfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
2: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
astore 2
start local 2 3: aload 2
arraylength
istore 3
start local 3 4: aload 2
iload 1
invokestatic java.util.Arrays.copyOf:([JI)[J
astore 2
5: iload 1
iload 3
if_icmple 7
6: aload 2
iload 3
iload 1
ldc -1
invokestatic java.util.Arrays.fill:([JIIJ)V
7: StackMap locals: long[] int
StackMap stack:
aload 0
aload 2
putfield com.google.common.collect.CompactHashMap.entries:[J
8: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 9 1 newCapacity I
3 9 2 entries [J
4 9 3 oldCapacity I
MethodParameters:
Name Flags
newCapacity
private void resizeTable(int);
descriptor: (I)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=8, locals=14, args_size=2
start local 0 start local 1 0: aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
astore 2
start local 2 1: aload 2
arraylength
istore 3
start local 3 2: iload 3
ldc 1073741824
if_icmplt 5
3: aload 0
ldc 2147483647
putfield com.google.common.collect.CompactHashMap.threshold:I
4: return
5: StackMap locals: int[] int
StackMap stack:
iconst_1
iload 1
i2f
aload 0
getfield com.google.common.collect.CompactHashMap.loadFactor:F
fmul
f2i
iadd
istore 4
start local 4 6: iload 1
invokestatic com.google.common.collect.CompactHashMap.newTable:(I)[I
astore 5
start local 5 7: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
astore 6
start local 6 8: aload 5
arraylength
iconst_1
isub
istore 7
start local 7 9: iconst_0
istore 8
start local 8 10: goto 18
11: StackMap locals: com.google.common.collect.CompactHashMap int int[] int int int[] long[] int int
StackMap stack:
aload 6
iload 8
laload
lstore 9
start local 9 12: lload 9
invokestatic com.google.common.collect.CompactHashMap.getHash:(J)I
istore 11
start local 11 13: iload 11
iload 7
iand
istore 12
start local 12 14: aload 5
iload 12
iaload
istore 13
start local 13 15: aload 5
iload 12
iload 8
iastore
16: aload 6
iload 8
iload 11
i2l
bipush 32
lshl
ldc 4294967295
iload 13
i2l
land
lor
lastore
end local 13 end local 12 end local 11 end local 9 17: iinc 8 1
StackMap locals:
StackMap stack:
18: iload 8
aload 0
getfield com.google.common.collect.CompactHashMap.size:I
if_icmplt 11
end local 8 19: aload 0
iload 4
putfield com.google.common.collect.CompactHashMap.threshold:I
20: aload 0
aload 5
putfield com.google.common.collect.CompactHashMap.table:[I
21: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 22 1 newCapacity I
1 22 2 oldTable [I
2 22 3 oldCapacity I
6 22 4 newThreshold I
7 22 5 newTable [I
8 22 6 entries [J
9 22 7 mask I
10 19 8 i I
12 17 9 oldEntry J
13 17 11 hash I
14 17 12 tableIndex I
15 17 13 next I
MethodParameters:
Name Flags
newCapacity
private int indexOf(java.lang.Object);
descriptor: (Ljava/lang/Object;)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
istore 2
start local 2 1: aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
iload 2
aload 0
invokevirtual com.google.common.collect.CompactHashMap.hashTableMask:()I
iand
iaload
istore 3
start local 3 2: goto 7
3: StackMap locals: int int
StackMap stack:
aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 3
laload
lstore 4
start local 4 4: lload 4
invokestatic com.google.common.collect.CompactHashMap.getHash:(J)I
iload 2
if_icmpne 6
aload 1
aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 3
aaload
invokestatic com.google.common.base.Objects.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 6
5: iload 3
ireturn
6: StackMap locals: long
StackMap stack:
lload 4
invokestatic com.google.common.collect.CompactHashMap.getNext:(J)I
istore 3
end local 4 7: StackMap locals:
StackMap stack:
iload 3
iconst_m1
if_icmpne 3
8: iconst_m1
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 9 1 key Ljava/lang/Object;
1 9 2 hash I
2 9 3 next I
4 7 4 entry J
RuntimeVisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
org.checkerframework.checker.nullness.qual.Nullable()
MethodParameters:
Name Flags
key
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 com.google.common.collect.CompactHashMap.indexOf:(Ljava/lang/Object;)I
iconst_m1
if_icmpeq 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 Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 2 1 key Ljava/lang/Object;
RuntimeVisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
org.checkerframework.checker.nullness.qual.Nullable()
MethodParameters:
Name Flags
key
public V get();
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.google.common.collect.CompactHashMap.indexOf:(Ljava/lang/Object;)I
istore 2
start local 2 1: aload 0
iload 2
invokevirtual com.google.common.collect.CompactHashMap.accessEntry:(I)V
2: iload 2
iconst_m1
if_icmpne 3
aconst_null
goto 4
StackMap locals: int
StackMap stack:
3: aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 2
aaload
StackMap locals:
StackMap stack: java.lang.Object
4: areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 5 1 key Ljava/lang/Object;
1 5 2 index I
Signature: (Ljava/lang/Object;)TV;
RuntimeVisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
org.checkerframework.checker.nullness.qual.Nullable()
MethodParameters:
Name Flags
key
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
aload 1
invokestatic com.google.common.collect.Hashing.smearedHash:(Ljava/lang/Object;)I
invokevirtual com.google.common.collect.CompactHashMap.remove:(Ljava/lang/Object;I)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 1 1 key Ljava/lang/Object;
Signature: (Ljava/lang/Object;)TV;
RuntimeInvisibleAnnotations:
com.google.errorprone.annotations.CanIgnoreReturnValue()
RuntimeVisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
org.checkerframework.checker.nullness.qual.Nullable()
METHOD_RETURN
org.checkerframework.checker.nullness.qual.Nullable()
MethodParameters:
Name Flags
key
private V remove(, );
descriptor: (Ljava/lang/Object;I)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iload 2
aload 0
invokevirtual com.google.common.collect.CompactHashMap.hashTableMask:()I
iand
istore 3
start local 3 1: aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
iload 3
iaload
istore 4
start local 4 2: iload 4
iconst_m1
if_icmpne 4
3: aconst_null
areturn
4: StackMap locals: int int
StackMap stack:
iconst_m1
istore 5
start local 5 5: StackMap locals: int
StackMap stack:
aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 4
laload
invokestatic com.google.common.collect.CompactHashMap.getHash:(J)I
iload 2
if_icmpne 16
6: aload 1
aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 4
aaload
invokestatic com.google.common.base.Objects.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 16
7: aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 4
aaload
astore 6
start local 6 8: iload 5
iconst_m1
if_icmpne 11
9: aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
iload 3
aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 4
laload
invokestatic com.google.common.collect.CompactHashMap.getNext:(J)I
iastore
10: goto 12
11: StackMap locals: java.lang.Object
StackMap stack:
aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 5
aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 5
laload
aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 4
laload
invokestatic com.google.common.collect.CompactHashMap.getNext:(J)I
invokestatic com.google.common.collect.CompactHashMap.swapNext:(JI)J
lastore
12: StackMap locals:
StackMap stack:
aload 0
iload 4
invokevirtual com.google.common.collect.CompactHashMap.moveLastEntry:(I)V
13: aload 0
dup
getfield com.google.common.collect.CompactHashMap.size:I
iconst_1
isub
putfield com.google.common.collect.CompactHashMap.size:I
14: aload 0
dup
getfield com.google.common.collect.CompactHashMap.modCount:I
iconst_1
iadd
putfield com.google.common.collect.CompactHashMap.modCount:I
15: aload 6
areturn
end local 6 16: StackMap locals:
StackMap stack:
iload 4
istore 5
17: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 4
laload
invokestatic com.google.common.collect.CompactHashMap.getNext:(J)I
istore 4
18: iload 4
iconst_m1
if_icmpne 5
19: aconst_null
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 20 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 20 1 key Ljava/lang/Object;
0 20 2 hash I
1 20 3 tableIndex I
2 20 4 next I
5 20 5 last I
8 16 6 oldValue TV;
Signature: (Ljava/lang/Object;I)TV;
RuntimeVisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
org.checkerframework.checker.nullness.qual.Nullable()
METHOD_RETURN
org.checkerframework.checker.nullness.qual.Nullable()
LOCAL_VARIABLE, {start=8, end=16, index=6}
org.checkerframework.checker.nullness.qual.Nullable()
MethodParameters:
Name Flags
key
hash
private V removeEntry();
descriptor: (I)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 1
aaload
aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 1
laload
invokestatic com.google.common.collect.CompactHashMap.getHash:(J)I
invokevirtual com.google.common.collect.CompactHashMap.remove:(Ljava/lang/Object;I)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 1 1 entryIndex I
Signature: (I)TV;
RuntimeInvisibleAnnotations:
com.google.errorprone.annotations.CanIgnoreReturnValue()
MethodParameters:
Name Flags
entryIndex
void moveLastEntry(int);
descriptor: (I)V
flags: (0x0000)
Code:
stack=5, locals=10, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.google.common.collect.CompactHashMap.size:()I
iconst_1
isub
istore 2
start local 2 1: iload 1
iload 2
if_icmpge 20
2: aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 1
aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 2
aaload
aastore
3: aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 1
aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 2
aaload
aastore
4: aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 2
aconst_null
aastore
5: aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 2
aconst_null
aastore
6: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 2
laload
lstore 3
start local 3 7: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 1
lload 3
lastore
8: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 2
ldc -1
lastore
9: lload 3
invokestatic com.google.common.collect.CompactHashMap.getHash:(J)I
aload 0
invokevirtual com.google.common.collect.CompactHashMap.hashTableMask:()I
iand
istore 5
start local 5 10: aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
iload 5
iaload
istore 6
start local 6 11: iload 6
iload 2
if_icmpne 14
12: aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
iload 5
iload 1
iastore
13: goto 23
14: StackMap locals: com.google.common.collect.CompactHashMap int int long int int
StackMap stack:
iload 6
istore 7
start local 7 15: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 6
laload
dup2
lstore 8
start local 8 16: invokestatic com.google.common.collect.CompactHashMap.getNext:(J)I
istore 6
17: iload 6
iload 2
if_icmpne 14
18: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 7
lload 8
iload 1
invokestatic com.google.common.collect.CompactHashMap.swapNext:(JI)J
lastore
end local 8 end local 7 end local 6 end local 5 end local 3 19: goto 23
20: StackMap locals:
StackMap stack:
aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 1
aconst_null
aastore
21: aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 1
aconst_null
aastore
22: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
iload 1
ldc -1
lastore
23: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 24 1 dstIndex I
1 24 2 srcIndex I
7 19 3 lastEntry J
10 19 5 tableIndex I
11 19 6 lastNext I
15 19 7 previous I
16 19 8 entry J
MethodParameters:
Name Flags
dstIndex
int firstEntryIndex();
descriptor: ()I
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.google.common.collect.CompactHashMap.isEmpty:()Z
ifeq 1
iconst_m1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
int getSuccessor(int);
descriptor: (I)I
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iconst_1
iadd
aload 0
getfield com.google.common.collect.CompactHashMap.size:I
if_icmpge 1
iload 1
iconst_1
iadd
goto 2
StackMap locals:
StackMap stack:
1: iconst_m1
StackMap locals:
StackMap stack: int
2: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 3 1 entryIndex I
MethodParameters:
Name Flags
entryIndex
int adjustAfterRemove(int, int);
descriptor: (II)I
flags: (0x0000)
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 1
iconst_1
isub
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 1 1 indexBeforeRemove I
0 1 2 indexRemoved I
MethodParameters:
Name Flags
indexBeforeRemove
indexRemoved
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=6, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 2
aload 1
aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 2
aaload
aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 2
aaload
invokeinterface java.util.function.BiFunction.apply:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
aastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield com.google.common.collect.CompactHashMap.size:I
if_icmplt 3
end local 2 6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 7 1 function Ljava/util/function/BiFunction<-TK;-TV;+TV;>;
2 6 2 i I
Signature: (Ljava/util/function/BiFunction<-TK;-TV;+TV;>;)V
MethodParameters:
Name Flags
function
public java.util.Set<K> keySet();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.common.collect.CompactHashMap.keySetView:Ljava/util/Set;
ifnonnull 1
aload 0
aload 0
invokevirtual com.google.common.collect.CompactHashMap.createKeySet:()Ljava/util/Set;
dup_x1
putfield com.google.common.collect.CompactHashMap.keySetView:Ljava/util/Set;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield com.google.common.collect.CompactHashMap.keySetView:Ljava/util/Set;
StackMap locals:
StackMap stack: java.util.Set
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
Signature: ()Ljava/util/Set<TK;>;
java.util.Set<K> createKeySet();
descriptor: ()Ljava/util/Set;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.google.common.collect.CompactHashMap$KeySetView
dup
aload 0
invokespecial com.google.common.collect.CompactHashMap$KeySetView.<init>:(Lcom/google/common/collect/CompactHashMap;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
Signature: ()Ljava/util/Set<TK;>;
java.util.Iterator<K> keySetIterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: new com.google.common.collect.CompactHashMap$1
dup
aload 0
aload 0
invokespecial com.google.common.collect.CompactHashMap$1.<init>:(Lcom/google/common/collect/CompactHashMap;Lcom/google/common/collect/CompactHashMap;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
Signature: ()Ljava/util/Iterator<TK;>;
public void forEach(java.util.function.BiConsumer<? super K, ? super V>);
descriptor: (Ljava/util/function/BiConsumer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokestatic com.google.common.base.Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: int
StackMap stack:
aload 1
aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 2
aaload
aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 2
aaload
invokeinterface java.util.function.BiConsumer.accept:(Ljava/lang/Object;Ljava/lang/Object;)V
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield com.google.common.collect.CompactHashMap.size:I
if_icmplt 3
end local 2 6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 7 1 action Ljava/util/function/BiConsumer<-TK;-TV;>;
2 6 2 i I
Signature: (Ljava/util/function/BiConsumer<-TK;-TV;>;)V
MethodParameters:
Name Flags
action
public java.util.Set<java.util.Map$Entry<K, V>> entrySet();
descriptor: ()Ljava/util/Set;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.common.collect.CompactHashMap.entrySetView:Ljava/util/Set;
ifnonnull 1
aload 0
aload 0
invokevirtual com.google.common.collect.CompactHashMap.createEntrySet:()Ljava/util/Set;
dup_x1
putfield com.google.common.collect.CompactHashMap.entrySetView:Ljava/util/Set;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield com.google.common.collect.CompactHashMap.entrySetView:Ljava/util/Set;
StackMap locals:
StackMap stack: java.util.Set
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
Signature: ()Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;
java.util.Set<java.util.Map$Entry<K, V>> createEntrySet();
descriptor: ()Ljava/util/Set;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.google.common.collect.CompactHashMap$EntrySetView
dup
aload 0
invokespecial com.google.common.collect.CompactHashMap$EntrySetView.<init>:(Lcom/google/common/collect/CompactHashMap;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
Signature: ()Ljava/util/Set<Ljava/util/Map$Entry<TK;TV;>;>;
java.util.Iterator<java.util.Map$Entry<K, V>> entrySetIterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: new com.google.common.collect.CompactHashMap$2
dup
aload 0
aload 0
invokespecial com.google.common.collect.CompactHashMap$2.<init>:(Lcom/google/common/collect/CompactHashMap;Lcom/google/common/collect/CompactHashMap;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
Signature: ()Ljava/util/Iterator<Ljava/util/Map$Entry<TK;TV;>;>;
public int size();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.common.collect.CompactHashMap.size:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<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
getfield com.google.common.collect.CompactHashMap.size:I
ifne 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 Lcom/google/common/collect/CompactHashMap<TK;TV;>;
public boolean containsValue(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: goto 5
2: StackMap locals: int
StackMap stack:
aload 1
aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 2
aaload
invokestatic com.google.common.base.Objects.equal:(Ljava/lang/Object;Ljava/lang/Object;)Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 0
getfield com.google.common.collect.CompactHashMap.size:I
if_icmplt 2
end local 2 6: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 7 1 value Ljava/lang/Object;
1 6 2 i I
RuntimeVisibleTypeAnnotations:
METHOD_FORMAL_PARAMETER
org.checkerframework.checker.nullness.qual.Nullable()
MethodParameters:
Name Flags
value
public java.util.Collection<V> values();
descriptor: ()Ljava/util/Collection;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.common.collect.CompactHashMap.valuesView:Ljava/util/Collection;
ifnonnull 1
aload 0
aload 0
invokevirtual com.google.common.collect.CompactHashMap.createValues:()Ljava/util/Collection;
dup_x1
putfield com.google.common.collect.CompactHashMap.valuesView:Ljava/util/Collection;
goto 2
StackMap locals:
StackMap stack:
1: aload 0
getfield com.google.common.collect.CompactHashMap.valuesView:Ljava/util/Collection;
StackMap locals:
StackMap stack: java.util.Collection
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
Signature: ()Ljava/util/Collection<TV;>;
java.util.Collection<V> createValues();
descriptor: ()Ljava/util/Collection;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.google.common.collect.CompactHashMap$ValuesView
dup
aload 0
invokespecial com.google.common.collect.CompactHashMap$ValuesView.<init>:(Lcom/google/common/collect/CompactHashMap;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
Signature: ()Ljava/util/Collection<TV;>;
java.util.Iterator<V> valuesIterator();
descriptor: ()Ljava/util/Iterator;
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: new com.google.common.collect.CompactHashMap$3
dup
aload 0
aload 0
invokespecial com.google.common.collect.CompactHashMap$3.<init>:(Lcom/google/common/collect/CompactHashMap;Lcom/google/common/collect/CompactHashMap;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
Signature: ()Ljava/util/Iterator<TV;>;
public void trimToSize();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: aload 0
getfield com.google.common.collect.CompactHashMap.size:I
istore 1
start local 1 1: iload 1
aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
arraylength
if_icmpge 3
2: aload 0
iload 1
invokevirtual com.google.common.collect.CompactHashMap.resizeEntries:(I)V
3: StackMap locals: int
StackMap stack:
iconst_1
iload 1
i2f
aload 0
getfield com.google.common.collect.CompactHashMap.loadFactor:F
fdiv
f2i
invokestatic java.lang.Integer.highestOneBit:(I)I
invokestatic java.lang.Math.max:(II)I
istore 2
start local 2 4: iload 2
ldc 1073741824
if_icmpge 8
5: iload 1
i2d
iload 2
i2d
ddiv
dstore 3
start local 3 6: dload 3
aload 0
getfield com.google.common.collect.CompactHashMap.loadFactor:F
f2d
dcmpl
ifle 8
7: iload 2
iconst_1
ishl
istore 2
end local 3 8: StackMap locals: int
StackMap stack:
iload 2
aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
arraylength
if_icmpge 10
9: aload 0
iload 2
invokevirtual com.google.common.collect.CompactHashMap.resizeTable:(I)V
10: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
1 11 1 size I
4 11 2 minimumTableSize I
6 8 3 load D
public void clear();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
dup
getfield com.google.common.collect.CompactHashMap.modCount:I
iconst_1
iadd
putfield com.google.common.collect.CompactHashMap.modCount:I
1: aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iconst_0
aload 0
getfield com.google.common.collect.CompactHashMap.size:I
aconst_null
invokestatic java.util.Arrays.fill:([Ljava/lang/Object;IILjava/lang/Object;)V
2: aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iconst_0
aload 0
getfield com.google.common.collect.CompactHashMap.size:I
aconst_null
invokestatic java.util.Arrays.fill:([Ljava/lang/Object;IILjava/lang/Object;)V
3: aload 0
getfield com.google.common.collect.CompactHashMap.table:[I
iconst_m1
invokestatic java.util.Arrays.fill:([II)V
4: aload 0
getfield com.google.common.collect.CompactHashMap.entries:[J
ldc -1
invokestatic java.util.Arrays.fill:([JJ)V
5: aload 0
iconst_0
putfield com.google.common.collect.CompactHashMap.size:I
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
private void writeObject(java.io.ObjectOutputStream);
descriptor: (Ljava/io/ObjectOutputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
1: aload 1
aload 0
getfield com.google.common.collect.CompactHashMap.size:I
invokevirtual java.io.ObjectOutputStream.writeInt:(I)V
2: iconst_0
istore 2
start local 2 3: goto 7
4: StackMap locals: int
StackMap stack:
aload 1
aload 0
getfield com.google.common.collect.CompactHashMap.keys:[Ljava/lang/Object;
iload 2
aaload
invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
5: aload 1
aload 0
getfield com.google.common.collect.CompactHashMap.values:[Ljava/lang/Object;
iload 2
aaload
invokevirtual java.io.ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
6: iinc 2 1
StackMap locals:
StackMap stack:
7: iload 2
aload 0
getfield com.google.common.collect.CompactHashMap.size:I
if_icmplt 4
end local 2 8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 9 1 stream Ljava/io/ObjectOutputStream;
3 8 2 i I
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
stream
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
1: aload 0
iconst_3
fconst_1
invokevirtual com.google.common.collect.CompactHashMap.init:(IF)V
2: aload 1
invokevirtual java.io.ObjectInputStream.readInt:()I
istore 2
start local 2 3: iload 2
istore 3
start local 3 4: goto 8
5: StackMap locals: int int
StackMap stack:
aload 1
invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
astore 4
start local 4 6: aload 1
invokevirtual java.io.ObjectInputStream.readObject:()Ljava/lang/Object;
astore 5
start local 5 7: aload 0
aload 4
aload 5
invokevirtual com.google.common.collect.CompactHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 end local 4 8: StackMap locals:
StackMap stack:
iinc 3 -1
iload 3
ifge 5
end local 3 9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/google/common/collect/CompactHashMap<TK;TV;>;
0 10 1 stream Ljava/io/ObjectInputStream;
3 10 2 elementCount I
4 9 3 i I
6 8 4 key TK;
7 8 5 value TV;
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
stream
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/util/AbstractMap<TK;TV;>;Ljava/io/Serializable;
SourceFile: "CompactHashMap.java"
NestMembers:
com.google.common.collect.CompactHashMap$1 com.google.common.collect.CompactHashMap$2 com.google.common.collect.CompactHashMap$3 com.google.common.collect.CompactHashMap$EntrySetView com.google.common.collect.CompactHashMap$Itr com.google.common.collect.CompactHashMap$KeySetView com.google.common.collect.CompactHashMap$MapEntry com.google.common.collect.CompactHashMap$ValuesView
InnerClasses:
com.google.common.collect.CompactHashMap$1
com.google.common.collect.CompactHashMap$2
com.google.common.collect.CompactHashMap$3
EntrySetView = com.google.common.collect.CompactHashMap$EntrySetView of com.google.common.collect.CompactHashMap
private abstract Itr = com.google.common.collect.CompactHashMap$Itr of com.google.common.collect.CompactHashMap
KeySetView = com.google.common.collect.CompactHashMap$KeySetView of com.google.common.collect.CompactHashMap
final MapEntry = com.google.common.collect.CompactHashMap$MapEntry of com.google.common.collect.CompactHashMap
ValuesView = com.google.common.collect.CompactHashMap$ValuesView of com.google.common.collect.CompactHashMap
public abstract Entry = java.util.Map$Entry of java.util.Map
RuntimeInvisibleAnnotations:
com.google.common.annotations.GwtIncompatible()