d$a.smali

.class final Lcom/google/common/collect/d$a;
.super Ljava/lang/Object;
.source "SourceFile"

# interfaces
.implements Ljava/util/Spliterator;


# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
    value = Lcom/google/common/collect/d;
.end annotation

.annotation system Ldalvik/annotation/InnerClass;
    accessFlags = 0x0
    name = "a"
.end annotation

.annotation system Ldalvik/annotation/Signature;
    value = {
        "Ljava/lang/Object;",
        "Ljava/util/Spliterator<",
        "TT;>;"
    }
.end annotation


# instance fields
.field a:Ljava/util/Spliterator;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Spliterator<",
            "TT;>;"
        }
    .end annotation
.end field

.field final b:Ljava/util/Spliterator;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Spliterator<",
            "TF;>;"
        }
    .end annotation
.end field

.field c:I

.field d:J

.field final synthetic e:Ljava/util/function/Function;


# direct methods
.method constructor <init>(Ljava/util/Spliterator;Ljava/util/Spliterator;IJLjava/util/function/Function;)V
    .registers 7
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/Spliterator<",
            "TT;>;",
            "Ljava/util/Spliterator<",
            "TF;>;IJ)V"
        }
    .end annotation

    .line 220
    iput-object p6, p0, Lcom/google/common/collect/d$a;->e:Ljava/util/function/Function;

    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 221
    iput-object p1, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    .line 222
    iput-object p2, p0, Lcom/google/common/collect/d$a;->b:Ljava/util/Spliterator;

    .line 223
    iput p3, p0, Lcom/google/common/collect/d$a;->c:I

    .line 224
    iput-wide p4, p0, Lcom/google/common/collect/d$a;->d:J

    return-void
.end method

.method private synthetic a(Ljava/util/function/Function;Ljava/lang/Object;)V
    .registers 3

    .line 238
    invoke-interface {p1, p2}, Ljava/util/function/Function;->apply(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Ljava/util/Spliterator;

    iput-object p1, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    return-void
.end method

.method private static synthetic a(Ljava/util/function/Function;Ljava/util/function/Consumer;Ljava/lang/Object;)V
    .registers 3

    .line 250
    invoke-interface {p0, p2}, Ljava/util/function/Function;->apply(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p0

    check-cast p0, Ljava/util/Spliterator;

    invoke-interface {p0, p1}, Ljava/util/Spliterator;->forEachRemaining(Ljava/util/function/Consumer;)V

    return-void
.end method

.method public static synthetic lambda$GC9Aw8Gro7DlO3PmUkKwz128uNg(Ljava/util/function/Function;Ljava/util/function/Consumer;Ljava/lang/Object;)V
    .registers 3

    invoke-static {p0, p1, p2}, Lcom/google/common/collect/d$a;->a(Ljava/util/function/Function;Ljava/util/function/Consumer;Ljava/lang/Object;)V

    return-void
.end method

.method public static synthetic lambda$Hnfp4TPjZecmd0AY1hYYXJnx5X0(Lcom/google/common/collect/d$a;Ljava/util/function/Function;Ljava/lang/Object;)V
    .registers 3

    invoke-direct {p0, p1, p2}, Lcom/google/common/collect/d$a;->a(Ljava/util/function/Function;Ljava/lang/Object;)V

    return-void
.end method


# virtual methods
.method public final characteristics()I
    .registers 2

    .line 288
    iget v0, p0, Lcom/google/common/collect/d$a;->c:I

    return v0
.end method

.method public final estimateSize()J
    .registers 6

    .line 280
    iget-object v0, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    if-eqz v0, :cond_10

    .line 281
    iget-wide v1, p0, Lcom/google/common/collect/d$a;->d:J

    invoke-interface {v0}, Ljava/util/Spliterator;->estimateSize()J

    move-result-wide v3

    invoke-static {v1, v2, v3, v4}, Ljava/lang/Math;->max(JJ)J

    move-result-wide v0

    iput-wide v0, p0, Lcom/google/common/collect/d$a;->d:J

    .line 283
    :cond_10
    iget-wide v0, p0, Lcom/google/common/collect/d$a;->d:J

    const-wide/16 v2, 0x0

    invoke-static {v0, v1, v2, v3}, Ljava/lang/Math;->max(JJ)J

    move-result-wide v0

    return-wide v0
.end method

.method public final forEachRemaining(Ljava/util/function/Consumer;)V
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/function/Consumer<",
            "-TT;>;)V"
        }
    .end annotation

    .line 246
    iget-object v0, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    if-eqz v0, :cond_a

    .line 247
    invoke-interface {v0, p1}, Ljava/util/Spliterator;->forEachRemaining(Ljava/util/function/Consumer;)V

    const/4 v0, 0x0

    .line 248
    iput-object v0, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    .line 250
    :cond_a
    iget-object v0, p0, Lcom/google/common/collect/d$a;->b:Ljava/util/Spliterator;

    iget-object v1, p0, Lcom/google/common/collect/d$a;->e:Ljava/util/function/Function;

    new-instance v2, Lcom/google/common/collect/-$$Lambda$d$a$GC9Aw8Gro7DlO3PmUkKwz128uNg;

    invoke-direct {v2, v1, p1}, Lcom/google/common/collect/-$$Lambda$d$a$GC9Aw8Gro7DlO3PmUkKwz128uNg;-><init>(Ljava/util/function/Function;Ljava/util/function/Consumer;)V

    invoke-interface {v0, v2}, Ljava/util/Spliterator;->forEachRemaining(Ljava/util/function/Consumer;)V

    const-wide/16 v0, 0x0

    .line 251
    iput-wide v0, p0, Lcom/google/common/collect/d$a;->d:J

    return-void
.end method

.method public final tryAdvance(Ljava/util/function/Consumer;)Z
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/function/Consumer<",
            "-TT;>;)Z"
        }
    .end annotation

    .line 230
    :cond_0
    iget-object v0, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    if-eqz v0, :cond_1c

    invoke-interface {v0, p1}, Ljava/util/Spliterator;->tryAdvance(Ljava/util/function/Consumer;)Z

    move-result v0

    if-eqz v0, :cond_1c

    .line 231
    iget-wide v0, p0, Lcom/google/common/collect/d$a;->d:J

    const-wide v2, 0x7fffffffffffffffL

    cmp-long p1, v0, v2

    if-eqz p1, :cond_1a

    const-wide/16 v2, 0x1

    sub-long/2addr v0, v2

    .line 232
    iput-wide v0, p0, Lcom/google/common/collect/d$a;->d:J

    :cond_1a
    const/4 p1, 0x1

    return p1

    :cond_1c
    const/4 v0, 0x0

    .line 236
    iput-object v0, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    .line 238
    iget-object v0, p0, Lcom/google/common/collect/d$a;->b:Ljava/util/Spliterator;

    iget-object v1, p0, Lcom/google/common/collect/d$a;->e:Ljava/util/function/Function;

    new-instance v2, Lcom/google/common/collect/-$$Lambda$d$a$Hnfp4TPjZecmd0AY1hYYXJnx5X0;

    invoke-direct {v2, p0, v1}, Lcom/google/common/collect/-$$Lambda$d$a$Hnfp4TPjZecmd0AY1hYYXJnx5X0;-><init>(Lcom/google/common/collect/d$a;Ljava/util/function/Function;)V

    invoke-interface {v0, v2}, Ljava/util/Spliterator;->tryAdvance(Ljava/util/function/Consumer;)Z

    move-result v0

    if-nez v0, :cond_0

    const/4 p1, 0x0

    return p1
.end method

.method public final trySplit()Ljava/util/Spliterator;
    .registers 10
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Ljava/util/Spliterator<",
            "TT;>;"
        }
    .end annotation

    .line 256
    iget-object v0, p0, Lcom/google/common/collect/d$a;->b:Ljava/util/Spliterator;

    invoke-interface {v0}, Ljava/util/Spliterator;->trySplit()Ljava/util/Spliterator;

    move-result-object v3

    const/4 v0, 0x0

    if-eqz v3, :cond_32

    .line 258
    iget v1, p0, Lcom/google/common/collect/d$a;->c:I

    and-int/lit8 v4, v1, -0x41

    .line 259
    invoke-virtual {p0}, Lcom/google/common/collect/d$a;->estimateSize()J

    move-result-wide v1

    const-wide v5, 0x7fffffffffffffffL

    cmp-long v7, v1, v5

    if-gez v7, :cond_24

    const-wide/16 v5, 0x2

    .line 261
    div-long/2addr v1, v5

    .line 262
    iget-wide v5, p0, Lcom/google/common/collect/d$a;->d:J

    sub-long/2addr v5, v1

    iput-wide v5, p0, Lcom/google/common/collect/d$a;->d:J

    .line 263
    iput v4, p0, Lcom/google/common/collect/d$a;->c:I

    :cond_24
    move-wide v5, v1

    .line 265
    new-instance v8, Lcom/google/common/collect/d$a;

    iget-object v2, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    iget-object v7, p0, Lcom/google/common/collect/d$a;->e:Ljava/util/function/Function;

    move-object v1, v8

    invoke-direct/range {v1 .. v7}, Lcom/google/common/collect/d$a;-><init>(Ljava/util/Spliterator;Ljava/util/Spliterator;IJLjava/util/function/Function;)V

    .line 267
    iput-object v0, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    return-object v8

    .line 269
    :cond_32
    iget-object v1, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    if-eqz v1, :cond_39

    .line 271
    iput-object v0, p0, Lcom/google/common/collect/d$a;->a:Ljava/util/Spliterator;

    return-object v1

    :cond_39
    return-object v0
.end method