i.smali
.class public final Lio/reactivex/internal/util/i;
.super Ljava/lang/Object;
.source "OpenHashSet.java"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# instance fields
.field public keys:[Ljava/lang/Object;
.annotation system Ldalvik/annotation/Signature;
value = {
"[TT;"
}
.end annotation
.end field
.field public mask:I
.field public maxSize:I
.field public size:I
# direct methods
.method public constructor <init>()V
.registers 2
.prologue
.line 37
const/4 v0, 0x0
invoke-direct {p0, v0}, Lio/reactivex/internal/util/i;-><init>(B)V
.line 38
return-void
.end method
.method private constructor <init>(B)V
.registers 5
.prologue
.line 49
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 51
const/16 v0, 0x10
invoke-static {v0}, Lio/reactivex/internal/util/j;->fi(I)I
move-result v0
.line 52
add-int/lit8 v1, v0, -0x1
iput v1, p0, Lio/reactivex/internal/util/i;->mask:I
.line 53
const/high16 v1, 0x3f400000 # 0.75f
int-to-float v2, v0
mul-float/2addr v1, v2
float-to-int v1, v1
iput v1, p0, Lio/reactivex/internal/util/i;->maxSize:I
.line 54
new-array v0, v0, [Ljava/lang/Object;
check-cast v0, [Ljava/lang/Object;
iput-object v0, p0, Lio/reactivex/internal/util/i;->keys:[Ljava/lang/Object;
.line 55
return-void
.end method
.method public static fh(I)I
.registers 3
.prologue
.line 164
const v0, -0x61c88647
mul-int/2addr v0, p0
.line 165
ushr-int/lit8 v1, v0, 0x10
xor-int/2addr v0, v1
return v0
.end method
# virtual methods
.method public final a(I[Ljava/lang/Object;I)Z
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"(I[TT;I)Z"
}
.end annotation
.prologue
.line 108
iget v0, p0, Lio/reactivex/internal/util/i;->size:I
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lio/reactivex/internal/util/i;->size:I
.line 115
:goto_6
add-int/lit8 v0, p1, 0x1
and-int/2addr v0, p3
.line 117
:goto_9
aget-object v1, p2, v0
.line 118
if-nez v1, :cond_12
.line 119
const/4 v0, 0x0
aput-object v0, p2, p1
.line 120
const/4 v0, 0x1
return v0
.line 122
:cond_12
invoke-virtual {v1}, Ljava/lang/Object;->hashCode()I
move-result v2
invoke-static {v2}, Lio/reactivex/internal/util/i;->fh(I)I
move-result v2
and-int/2addr v2, p3
.line 124
if-gt p1, v0, :cond_25
if-ge p1, v2, :cond_21
if-le v2, v0, :cond_29
.line 130
:cond_21
aput-object v1, p2, p1
move p1, v0
goto :goto_6
.line 124
:cond_25
if-lt p1, v2, :cond_29
if-gt v2, v0, :cond_21
.line 128
:cond_29
add-int/lit8 v0, v0, 0x1
and-int/2addr v0, p3
goto :goto_9
.end method