Rabbit-R1/android (non root)/smali/smali_classes3/com/google/common/collect/RegularImmutableMap.smali
2024-05-21 17:08:36 -04:00

1116 lines
24 KiB
Smali

.class final Lcom/google/common/collect/RegularImmutableMap;
.super Lcom/google/common/collect/ImmutableMap;
.source "RegularImmutableMap.java"
# annotations
.annotation runtime Lcom/google/common/collect/ElementTypesAreNonnullByDefault;
.end annotation
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/google/common/collect/RegularImmutableMap$KeySet;,
Lcom/google/common/collect/RegularImmutableMap$KeysOrValuesAsList;,
Lcom/google/common/collect/RegularImmutableMap$EntrySet;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<K:",
"Ljava/lang/Object;",
"V:",
"Ljava/lang/Object;",
">",
"Lcom/google/common/collect/ImmutableMap<",
"TK;TV;>;"
}
.end annotation
# static fields
.field private static final ABSENT:B = -0x1t
.field private static final BYTE_MASK:I = 0xff
.field private static final BYTE_MAX_SIZE:I = 0x80
.field static final EMPTY:Lcom/google/common/collect/ImmutableMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/common/collect/ImmutableMap<",
"Ljava/lang/Object;",
"Ljava/lang/Object;",
">;"
}
.end annotation
.end field
.field private static final SHORT_MASK:I = 0xffff
.field private static final SHORT_MAX_SIZE:I = 0x8000
.field private static final serialVersionUID:J
# instance fields
.field final transient alternatingKeysAndValues:[Ljava/lang/Object;
.field private final transient hashTable:Ljava/lang/Object;
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
.end field
.field private final transient size:I
# direct methods
.method static constructor <clinit>()V
.locals 4
.line 50
new-instance v0, Lcom/google/common/collect/RegularImmutableMap;
const/4 v1, 0x0
new-array v2, v1, [Ljava/lang/Object;
const/4 v3, 0x0
invoke-direct {v0, v3, v2, v1}, Lcom/google/common/collect/RegularImmutableMap;-><init>(Ljava/lang/Object;[Ljava/lang/Object;I)V
sput-object v0, Lcom/google/common/collect/RegularImmutableMap;->EMPTY:Lcom/google/common/collect/ImmutableMap;
return-void
.end method
.method private constructor <init>(Ljava/lang/Object;[Ljava/lang/Object;I)V
.locals 0
.param p1 # Ljava/lang/Object;
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
.end param
.line 296
invoke-direct {p0}, Lcom/google/common/collect/ImmutableMap;-><init>()V
iput-object p1, p0, Lcom/google/common/collect/RegularImmutableMap;->hashTable:Ljava/lang/Object;
iput-object p2, p0, Lcom/google/common/collect/RegularImmutableMap;->alternatingKeysAndValues:[Ljava/lang/Object;
iput p3, p0, Lcom/google/common/collect/RegularImmutableMap;->size:I
return-void
.end method
.method static create(I[Ljava/lang/Object;)Lcom/google/common/collect/RegularImmutableMap;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<K:",
"Ljava/lang/Object;",
"V:",
"Ljava/lang/Object;",
">(I[",
"Ljava/lang/Object;",
")",
"Lcom/google/common/collect/RegularImmutableMap<",
"TK;TV;>;"
}
.end annotation
const/4 v0, 0x0
.line 92
invoke-static {p0, p1, v0}, Lcom/google/common/collect/RegularImmutableMap;->create(I[Ljava/lang/Object;Lcom/google/common/collect/ImmutableMap$Builder;)Lcom/google/common/collect/RegularImmutableMap;
move-result-object p0
return-object p0
.end method
.method static create(I[Ljava/lang/Object;Lcom/google/common/collect/ImmutableMap$Builder;)Lcom/google/common/collect/RegularImmutableMap;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"<K:",
"Ljava/lang/Object;",
"V:",
"Ljava/lang/Object;",
">(I[",
"Ljava/lang/Object;",
"Lcom/google/common/collect/ImmutableMap$Builder<",
"TK;TV;>;)",
"Lcom/google/common/collect/RegularImmutableMap<",
"TK;TV;>;"
}
.end annotation
if-nez p0, :cond_0
sget-object p0, Lcom/google/common/collect/RegularImmutableMap;->EMPTY:Lcom/google/common/collect/ImmutableMap;
.line 104
check-cast p0, Lcom/google/common/collect/RegularImmutableMap;
return-object p0
:cond_0
const/4 v0, 0x0
const/4 v1, 0x1
if-ne p0, v1, :cond_1
.line 108
aget-object p0, p1, v0
.line 109
invoke-static {p0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
aget-object p2, p1, v1
invoke-static {p2}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p2
.line 108
invoke-static {p0, p2}, Lcom/google/common/collect/CollectPreconditions;->checkEntryNotNull(Ljava/lang/Object;Ljava/lang/Object;)V
.line 110
new-instance p0, Lcom/google/common/collect/RegularImmutableMap;
const/4 p2, 0x0
invoke-direct {p0, p2, p1, v1}, Lcom/google/common/collect/RegularImmutableMap;-><init>(Ljava/lang/Object;[Ljava/lang/Object;I)V
return-object p0
.line 112
:cond_1
array-length v2, p1
shr-int/2addr v2, v1
invoke-static {p0, v2}, Lcom/google/common/base/Preconditions;->checkPositionIndex(II)I
.line 113
invoke-static {p0}, Lcom/google/common/collect/ImmutableSet;->chooseTableSize(I)I
move-result v2
.line 119
invoke-static {p1, p0, v2, v0}, Lcom/google/common/collect/RegularImmutableMap;->createHashTable([Ljava/lang/Object;III)Ljava/lang/Object;
move-result-object v2
.line 121
instance-of v3, v2, [Ljava/lang/Object;
if-eqz v3, :cond_3
.line 122
check-cast v2, [Ljava/lang/Object;
const/4 p0, 0x2
.line 123
aget-object p0, v2, p0
check-cast p0, Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;
if-eqz p2, :cond_2
.line 127
iput-object p0, p2, Lcom/google/common/collect/ImmutableMap$Builder;->duplicateKey:Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;
.line 128
aget-object p0, v2, v0
.line 129
aget-object p2, v2, v1
check-cast p2, Ljava/lang/Integer;
invoke-virtual {p2}, Ljava/lang/Integer;->intValue()I
move-result p2
mul-int/lit8 v0, p2, 0x2
.line 130
invoke-static {p1, v0}, Ljava/util/Arrays;->copyOf([Ljava/lang/Object;I)[Ljava/lang/Object;
move-result-object p1
move-object v2, p0
move p0, p2
goto :goto_0
.line 125
:cond_2
invoke-virtual {p0}, Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;->exception()Ljava/lang/IllegalArgumentException;
move-result-object p0
throw p0
.line 134
:cond_3
:goto_0
new-instance p2, Lcom/google/common/collect/RegularImmutableMap;
invoke-direct {p2, v2, p1, p0}, Lcom/google/common/collect/RegularImmutableMap;-><init>(Ljava/lang/Object;[Ljava/lang/Object;I)V
return-object p2
.end method
.method private static createHashTable([Ljava/lang/Object;III)Ljava/lang/Object;
.locals 12
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
const/4 v0, 0x0
const/4 v1, 0x1
if-ne p1, v1, :cond_0
.line 156
aget-object p1, p0, p3
.line 157
invoke-static {p1}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
xor-int/lit8 p2, p3, 0x1
aget-object p0, p0, p2
.line 158
invoke-static {p0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
.line 156
invoke-static {p1, p0}, Lcom/google/common/collect/CollectPreconditions;->checkEntryNotNull(Ljava/lang/Object;Ljava/lang/Object;)V
return-object v0
:cond_0
add-int/lit8 v2, p2, -0x1
const/16 v3, 0x80
const/4 v4, -0x1
const/4 v5, 0x0
if-gt p2, v3, :cond_6
.line 170
new-array p2, p2, [B
.line 171
invoke-static {p2, v4}, Ljava/util/Arrays;->fill([BB)V
move v3, v5
:goto_0
if-ge v5, p1, :cond_4
mul-int/lit8 v4, v5, 0x2
add-int/2addr v4, p3
mul-int/lit8 v6, v3, 0x2
add-int/2addr v6, p3
.line 179
aget-object v7, p0, v4
invoke-static {v7}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v7
xor-int/2addr v4, v1
.line 180
aget-object v4, p0, v4
invoke-static {v4}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
.line 181
invoke-static {v7, v4}, Lcom/google/common/collect/CollectPreconditions;->checkEntryNotNull(Ljava/lang/Object;Ljava/lang/Object;)V
.line 182
invoke-virtual {v7}, Ljava/lang/Object;->hashCode()I
move-result v8
invoke-static {v8}, Lcom/google/common/collect/Hashing;->smear(I)I
move-result v8
:goto_1
and-int/2addr v8, v2
.line 184
aget-byte v9, p2, v8
const/16 v10, 0xff
and-int/2addr v9, v10
if-ne v9, v10, :cond_2
int-to-byte v9, v6
.line 186
aput-byte v9, p2, v8
if-ge v3, v5, :cond_1
.line 197
aput-object v7, p0, v6
xor-int/lit8 v6, v6, 0x1
.line 198
aput-object v4, p0, v6
:cond_1
add-int/lit8 v3, v3, 0x1
goto :goto_2
.line 188
:cond_2
aget-object v10, p0, v9
invoke-virtual {v7, v10}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v10
if-eqz v10, :cond_3
.line 189
new-instance v0, Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;
xor-int/lit8 v6, v9, 0x1
aget-object v8, p0, v6
.line 191
invoke-static {v8}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v8
invoke-direct {v0, v7, v4, v8}, Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
.line 192
aput-object v4, p0, v6
:goto_2
add-int/lit8 v5, v5, 0x1
goto :goto_0
:cond_3
add-int/lit8 v8, v8, 0x1
goto :goto_1
:cond_4
if-ne v3, p1, :cond_5
goto :goto_3
.line 202
:cond_5
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
filled-new-array {p2, p0, v0}, [Ljava/lang/Object;
move-result-object p2
:goto_3
return-object p2
:cond_6
const v3, 0x8000
if-gt p2, v3, :cond_c
.line 210
new-array p2, p2, [S
.line 211
invoke-static {p2, v4}, Ljava/util/Arrays;->fill([SS)V
move v3, v5
:goto_4
if-ge v5, p1, :cond_a
mul-int/lit8 v4, v5, 0x2
add-int/2addr v4, p3
mul-int/lit8 v6, v3, 0x2
add-int/2addr v6, p3
.line 219
aget-object v7, p0, v4
invoke-static {v7}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v7
xor-int/2addr v4, v1
.line 220
aget-object v4, p0, v4
invoke-static {v4}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
.line 221
invoke-static {v7, v4}, Lcom/google/common/collect/CollectPreconditions;->checkEntryNotNull(Ljava/lang/Object;Ljava/lang/Object;)V
.line 222
invoke-virtual {v7}, Ljava/lang/Object;->hashCode()I
move-result v8
invoke-static {v8}, Lcom/google/common/collect/Hashing;->smear(I)I
move-result v8
:goto_5
and-int/2addr v8, v2
.line 224
aget-short v9, p2, v8
const v10, 0xffff
and-int/2addr v9, v10
if-ne v9, v10, :cond_8
int-to-short v9, v6
.line 226
aput-short v9, p2, v8
if-ge v3, v5, :cond_7
.line 237
aput-object v7, p0, v6
xor-int/lit8 v6, v6, 0x1
.line 238
aput-object v4, p0, v6
:cond_7
add-int/lit8 v3, v3, 0x1
goto :goto_6
.line 228
:cond_8
aget-object v10, p0, v9
invoke-virtual {v7, v10}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v10
if-eqz v10, :cond_9
.line 229
new-instance v0, Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;
xor-int/lit8 v6, v9, 0x1
aget-object v8, p0, v6
.line 231
invoke-static {v8}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v8
invoke-direct {v0, v7, v4, v8}, Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
.line 232
aput-object v4, p0, v6
:goto_6
add-int/lit8 v5, v5, 0x1
goto :goto_4
:cond_9
add-int/lit8 v8, v8, 0x1
goto :goto_5
:cond_a
if-ne v3, p1, :cond_b
goto :goto_7
.line 242
:cond_b
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
filled-new-array {p2, p0, v0}, [Ljava/lang/Object;
move-result-object p2
:goto_7
return-object p2
.line 247
:cond_c
new-array p2, p2, [I
.line 248
invoke-static {p2, v4}, Ljava/util/Arrays;->fill([II)V
move v3, v5
:goto_8
if-ge v5, p1, :cond_10
mul-int/lit8 v6, v5, 0x2
add-int/2addr v6, p3
mul-int/lit8 v7, v3, 0x2
add-int/2addr v7, p3
.line 256
aget-object v8, p0, v6
invoke-static {v8}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v8
xor-int/2addr v6, v1
.line 257
aget-object v6, p0, v6
invoke-static {v6}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v6
.line 258
invoke-static {v8, v6}, Lcom/google/common/collect/CollectPreconditions;->checkEntryNotNull(Ljava/lang/Object;Ljava/lang/Object;)V
.line 259
invoke-virtual {v8}, Ljava/lang/Object;->hashCode()I
move-result v9
invoke-static {v9}, Lcom/google/common/collect/Hashing;->smear(I)I
move-result v9
:goto_9
and-int/2addr v9, v2
.line 261
aget v10, p2, v9
if-ne v10, v4, :cond_e
.line 263
aput v7, p2, v9
if-ge v3, v5, :cond_d
.line 274
aput-object v8, p0, v7
xor-int/lit8 v7, v7, 0x1
.line 275
aput-object v6, p0, v7
:cond_d
add-int/lit8 v3, v3, 0x1
goto :goto_a
.line 265
:cond_e
aget-object v11, p0, v10
invoke-virtual {v8, v11}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v11
if-eqz v11, :cond_f
.line 266
new-instance v0, Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;
xor-int/lit8 v7, v10, 0x1
aget-object v9, p0, v7
.line 268
invoke-static {v9}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v9
invoke-direct {v0, v8, v6, v9}, Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;-><init>(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
.line 269
aput-object v6, p0, v7
:goto_a
add-int/lit8 v5, v5, 0x1
goto :goto_8
:cond_f
add-int/lit8 v9, v9, 0x1
goto :goto_9
:cond_10
if-ne v3, p1, :cond_11
goto :goto_b
.line 279
:cond_11
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p0
filled-new-array {p2, p0, v0}, [Ljava/lang/Object;
move-result-object p2
:goto_b
return-object p2
.end method
.method static createHashTableOrThrow([Ljava/lang/Object;III)Ljava/lang/Object;
.locals 0
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
.line 286
invoke-static {p0, p1, p2, p3}, Lcom/google/common/collect/RegularImmutableMap;->createHashTable([Ljava/lang/Object;III)Ljava/lang/Object;
move-result-object p0
.line 287
instance-of p1, p0, [Ljava/lang/Object;
if-nez p1, :cond_0
return-object p0
.line 288
:cond_0
check-cast p0, [Ljava/lang/Object;
const/4 p1, 0x2
.line 289
aget-object p0, p0, p1
check-cast p0, Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;
.line 290
invoke-virtual {p0}, Lcom/google/common/collect/ImmutableMap$Builder$DuplicateKey;->exception()Ljava/lang/IllegalArgumentException;
move-result-object p0
throw p0
.end method
.method static get(Ljava/lang/Object;[Ljava/lang/Object;IILjava/lang/Object;)Ljava/lang/Object;
.locals 4
.param p0 # Ljava/lang/Object;
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
.end param
.param p4 # Ljava/lang/Object;
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
.end param
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
const/4 v0, 0x0
if-nez p4, :cond_0
return-object v0
:cond_0
const/4 v1, 0x1
if-ne p2, v1, :cond_2
.line 334
aget-object p0, p1, p3
invoke-static {p0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
invoke-virtual {p0, p4}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result p0
if-eqz p0, :cond_1
xor-int/lit8 p0, p3, 0x1
.line 335
aget-object p0, p1, p0
invoke-static {p0}, Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
:cond_1
return-object v0
:cond_2
if-nez p0, :cond_3
return-object v0
.line 340
:cond_3
instance-of p2, p0, [B
if-eqz p2, :cond_6
.line 341
move-object p2, p0
check-cast p2, [B
.line 342
array-length p0, p2
add-int/lit8 p3, p0, -0x1
.line 343
invoke-virtual {p4}, Ljava/lang/Object;->hashCode()I
move-result p0
invoke-static {p0}, Lcom/google/common/collect/Hashing;->smear(I)I
move-result p0
:goto_0
and-int/2addr p0, p3
.line 345
aget-byte v2, p2, p0
const/16 v3, 0xff
and-int/2addr v2, v3
if-ne v2, v3, :cond_4
return-object v0
.line 348
:cond_4
aget-object v3, p1, v2
invoke-virtual {p4, v3}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_5
xor-int/lit8 p0, v2, 0x1
.line 349
aget-object p0, p1, p0
return-object p0
:cond_5
add-int/lit8 p0, p0, 0x1
goto :goto_0
.line 352
:cond_6
instance-of p2, p0, [S
if-eqz p2, :cond_9
.line 353
move-object p2, p0
check-cast p2, [S
.line 354
array-length p0, p2
add-int/lit8 p3, p0, -0x1
.line 355
invoke-virtual {p4}, Ljava/lang/Object;->hashCode()I
move-result p0
invoke-static {p0}, Lcom/google/common/collect/Hashing;->smear(I)I
move-result p0
:goto_1
and-int/2addr p0, p3
.line 357
aget-short v2, p2, p0
const v3, 0xffff
and-int/2addr v2, v3
if-ne v2, v3, :cond_7
return-object v0
.line 360
:cond_7
aget-object v3, p1, v2
invoke-virtual {p4, v3}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_8
xor-int/lit8 p0, v2, 0x1
.line 361
aget-object p0, p1, p0
return-object p0
:cond_8
add-int/lit8 p0, p0, 0x1
goto :goto_1
.line 365
:cond_9
check-cast p0, [I
.line 366
array-length p2, p0
sub-int/2addr p2, v1
.line 367
invoke-virtual {p4}, Ljava/lang/Object;->hashCode()I
move-result p3
invoke-static {p3}, Lcom/google/common/collect/Hashing;->smear(I)I
move-result p3
:goto_2
and-int/2addr p3, p2
.line 369
aget v2, p0, p3
const/4 v3, -0x1
if-ne v2, v3, :cond_a
return-object v0
.line 372
:cond_a
aget-object v3, p1, v2
invoke-virtual {p4, v3}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result v3
if-eqz v3, :cond_b
xor-int/lit8 p0, v2, 0x1
.line 373
aget-object p0, p1, p0
return-object p0
:cond_b
add-int/lit8 p3, p3, 0x1
goto :goto_2
.end method
# virtual methods
.method createEntrySet()Lcom/google/common/collect/ImmutableSet;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/collect/ImmutableSet<",
"Ljava/util/Map$Entry<",
"TK;TV;>;>;"
}
.end annotation
.line 381
new-instance v0, Lcom/google/common/collect/RegularImmutableMap$EntrySet;
iget-object v1, p0, Lcom/google/common/collect/RegularImmutableMap;->alternatingKeysAndValues:[Ljava/lang/Object;
const/4 v2, 0x0
iget v3, p0, Lcom/google/common/collect/RegularImmutableMap;->size:I
invoke-direct {v0, p0, v1, v2, v3}, Lcom/google/common/collect/RegularImmutableMap$EntrySet;-><init>(Lcom/google/common/collect/ImmutableMap;[Ljava/lang/Object;II)V
return-object v0
.end method
.method createKeySet()Lcom/google/common/collect/ImmutableSet;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/collect/ImmutableSet<",
"TK;>;"
}
.end annotation
.line 465
new-instance v0, Lcom/google/common/collect/RegularImmutableMap$KeysOrValuesAsList;
iget-object v1, p0, Lcom/google/common/collect/RegularImmutableMap;->alternatingKeysAndValues:[Ljava/lang/Object;
const/4 v2, 0x0
iget v3, p0, Lcom/google/common/collect/RegularImmutableMap;->size:I
invoke-direct {v0, v1, v2, v3}, Lcom/google/common/collect/RegularImmutableMap$KeysOrValuesAsList;-><init>([Ljava/lang/Object;II)V
.line 467
new-instance v1, Lcom/google/common/collect/RegularImmutableMap$KeySet;
invoke-direct {v1, p0, v0}, Lcom/google/common/collect/RegularImmutableMap$KeySet;-><init>(Lcom/google/common/collect/ImmutableMap;Lcom/google/common/collect/ImmutableList;)V
return-object v1
.end method
.method createValues()Lcom/google/common/collect/ImmutableCollection;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lcom/google/common/collect/ImmutableCollection<",
"TV;>;"
}
.end annotation
.line 542
new-instance v0, Lcom/google/common/collect/RegularImmutableMap$KeysOrValuesAsList;
iget-object v1, p0, Lcom/google/common/collect/RegularImmutableMap;->alternatingKeysAndValues:[Ljava/lang/Object;
const/4 v2, 0x1
iget p0, p0, Lcom/google/common/collect/RegularImmutableMap;->size:I
invoke-direct {v0, v1, v2, p0}, Lcom/google/common/collect/RegularImmutableMap$KeysOrValuesAsList;-><init>([Ljava/lang/Object;II)V
return-object v0
.end method
.method public get(Ljava/lang/Object;)Ljava/lang/Object;
.locals 3
.param p1 # Ljava/lang/Object;
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Object;",
")TV;"
}
.end annotation
.annotation runtime Ljavax/annotation/CheckForNull;
.end annotation
iget-object v0, p0, Lcom/google/common/collect/RegularImmutableMap;->hashTable:Ljava/lang/Object;
iget-object v1, p0, Lcom/google/common/collect/RegularImmutableMap;->alternatingKeysAndValues:[Ljava/lang/Object;
iget p0, p0, Lcom/google/common/collect/RegularImmutableMap;->size:I
const/4 v2, 0x0
.line 311
invoke-static {v0, v1, p0, v2, p1}, Lcom/google/common/collect/RegularImmutableMap;->get(Ljava/lang/Object;[Ljava/lang/Object;IILjava/lang/Object;)Ljava/lang/Object;
move-result-object p0
if-nez p0, :cond_0
const/4 p0, 0x0
:cond_0
return-object p0
.end method
.method isPartialView()Z
.locals 0
const/4 p0, 0x0
return p0
.end method
.method public size()I
.locals 0
iget p0, p0, Lcom/google/common/collect/RegularImmutableMap;->size:I
return p0
.end method