.class public final Ly/s/s; .super Ljava/lang/Object; .source "Sequences.kt" # interfaces .implements Lkotlin/sequences/Sequence; .implements Ly/s/e; # annotations .annotation system Ldalvik/annotation/Signature; value = { "", "Ljava/lang/Object;", "Lkotlin/sequences/Sequence<", "TT;>;", "Ly/s/e<", "TT;>;" } .end annotation # instance fields .field public final a:Lkotlin/sequences/Sequence; .annotation system Ldalvik/annotation/Signature; value = { "Lkotlin/sequences/Sequence<", "TT;>;" } .end annotation .end field .field public final b:I .field public final c:I # direct methods .method public constructor (Lkotlin/sequences/Sequence;II)V .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lkotlin/sequences/Sequence<", "+TT;>;II)V" } .end annotation const-string v0, "sequence" invoke-static {p1, v0}, Ly/n/c/j;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V invoke-direct {p0}, Ljava/lang/Object;->()V iput-object p1, p0, Ly/s/s;->a:Lkotlin/sequences/Sequence; iput p2, p0, Ly/s/s;->b:I iput p3, p0, Ly/s/s;->c:I const/4 p1, 0x1 if-ltz p2, :cond_0 const/4 p2, 0x1 goto :goto_0 :cond_0 const/4 p2, 0x0 :goto_0 if-eqz p2, :cond_5 iget p2, p0, Ly/s/s;->c:I if-ltz p2, :cond_1 const/4 p2, 0x1 goto :goto_1 :cond_1 const/4 p2, 0x0 :goto_1 if-eqz p2, :cond_4 iget p2, p0, Ly/s/s;->c:I iget p3, p0, Ly/s/s;->b:I if-lt p2, p3, :cond_2 goto :goto_2 :cond_2 const/4 p1, 0x0 :goto_2 if-eqz p1, :cond_3 return-void :cond_3 const-string p1, "endIndex should be not less than startIndex, but was " invoke-static {p1}, Lf/e/c/a/a;->E(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 iget p2, p0, Ly/s/s;->c:I invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string p2, " < " invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; iget p2, p0, Ly/s/s;->b:I invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 new-instance p2, Ljava/lang/IllegalArgumentException; invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {p2, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p2 :cond_4 const-string p1, "endIndex should be non-negative, but is " invoke-static {p1}, Lf/e/c/a/a;->E(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 iget p2, p0, Ly/s/s;->c:I invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 new-instance p2, Ljava/lang/IllegalArgumentException; invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {p2, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p2 :cond_5 const-string p1, "startIndex should be non-negative, but is " invoke-static {p1}, Lf/e/c/a/a;->E(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object p1 iget p2, p0, Ly/s/s;->b:I invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 new-instance p2, Ljava/lang/IllegalArgumentException; invoke-virtual {p1}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {p2, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw p2 .end method # virtual methods .method public drop(I)Lkotlin/sequences/Sequence; .locals 4 .annotation system Ldalvik/annotation/Signature; value = { "(I)", "Lkotlin/sequences/Sequence<", "TT;>;" } .end annotation iget v0, p0, Ly/s/s;->c:I iget v1, p0, Ly/s/s;->b:I sub-int v2, v0, v1 if-lt p1, v2, :cond_0 sget-object p1, Ly/s/f;->a:Ly/s/f; goto :goto_0 :cond_0 new-instance v2, Ly/s/s; iget-object v3, p0, Ly/s/s;->a:Lkotlin/sequences/Sequence; add-int/2addr v1, p1 invoke-direct {v2, v3, v1, v0}, Ly/s/s;->(Lkotlin/sequences/Sequence;II)V move-object p1, v2 :goto_0 return-object p1 .end method .method public iterator()Ljava/util/Iterator; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/Iterator<", "TT;>;" } .end annotation new-instance v0, Ly/s/s$a; invoke-direct {v0, p0}, Ly/s/s$a;->(Ly/s/s;)V return-object v0 .end method .method public take(I)Lkotlin/sequences/Sequence; .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(I)", "Lkotlin/sequences/Sequence<", "TT;>;" } .end annotation iget v0, p0, Ly/s/s;->c:I iget v1, p0, Ly/s/s;->b:I sub-int/2addr v0, v1 if-lt p1, v0, :cond_0 move-object v0, p0 goto :goto_0 :cond_0 new-instance v0, Ly/s/s; iget-object v2, p0, Ly/s/s;->a:Lkotlin/sequences/Sequence; add-int/2addr p1, v1 invoke-direct {v0, v2, v1, p1}, Ly/s/s;->(Lkotlin/sequences/Sequence;II)V :goto_0 return-object v0 .end method