.class Lcom/google/common/collect/Iterators$4; .super Lcom/google/common/collect/UnmodifiableIterator; .source "Iterators.java" # annotations .annotation system Ldalvik/annotation/EnclosingMethod; value = Lcom/google/common/collect/Iterators;->partitionImpl(Ljava/util/Iterator;IZ)Lcom/google/common/collect/UnmodifiableIterator; .end annotation .annotation system Ldalvik/annotation/InnerClass; accessFlags = 0x1 name = null .end annotation .annotation system Ldalvik/annotation/Signature; value = { "Lcom/google/common/collect/UnmodifiableIterator<", "Ljava/util/List<", "TT;>;>;" } .end annotation # instance fields .field public final synthetic val$iterator:Ljava/util/Iterator; .field public final synthetic val$pad:Z .field public final synthetic val$size:I # direct methods .method public constructor (Ljava/util/Iterator;IZ)V .locals 0 .line 1 iput-object p1, p0, Lcom/google/common/collect/Iterators$4;->val$iterator:Ljava/util/Iterator; iput p2, p0, Lcom/google/common/collect/Iterators$4;->val$size:I iput-boolean p3, p0, Lcom/google/common/collect/Iterators$4;->val$pad:Z invoke-direct {p0}, Lcom/google/common/collect/UnmodifiableIterator;->()V return-void .end method # virtual methods .method public hasNext()Z .locals 1 .line 1 iget-object v0, p0, Lcom/google/common/collect/Iterators$4;->val$iterator:Ljava/util/Iterator; invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z move-result v0 return v0 .end method .method public bridge synthetic next()Ljava/lang/Object; .locals 1 .line 1 invoke-virtual {p0}, Lcom/google/common/collect/Iterators$4;->next()Ljava/util/List; move-result-object v0 return-object v0 .end method .method public next()Ljava/util/List; .locals 5 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/List<", "TT;>;" } .end annotation .line 2 invoke-virtual {p0}, Lcom/google/common/collect/Iterators$4;->hasNext()Z move-result v0 if-eqz v0, :cond_4 .line 3 iget v0, p0, Lcom/google/common/collect/Iterators$4;->val$size:I new-array v0, v0, [Ljava/lang/Object; const/4 v1, 0x0 move v2, v1 .line 4 :goto_0 iget v3, p0, Lcom/google/common/collect/Iterators$4;->val$size:I if-ge v2, v3, :cond_0 iget-object v3, p0, Lcom/google/common/collect/Iterators$4;->val$iterator:Ljava/util/Iterator; invoke-interface {v3}, Ljava/util/Iterator;->hasNext()Z move-result v3 if-eqz v3, :cond_0 .line 5 iget-object v3, p0, Lcom/google/common/collect/Iterators$4;->val$iterator:Ljava/util/Iterator; invoke-interface {v3}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v3 aput-object v3, v0, v2 add-int/lit8 v2, v2, 0x1 goto :goto_0 :cond_0 move v3, v2 .line 6 :goto_1 iget v4, p0, Lcom/google/common/collect/Iterators$4;->val$size:I if-ge v3, v4, :cond_1 const/4 v4, 0x0 .line 7 aput-object v4, v0, v3 add-int/lit8 v3, v3, 0x1 goto :goto_1 .line 8 :cond_1 invoke-static {v0}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List; move-result-object v0 invoke-static {v0}, Ljava/util/Collections;->unmodifiableList(Ljava/util/List;)Ljava/util/List; move-result-object v0 .line 9 iget-boolean v3, p0, Lcom/google/common/collect/Iterators$4;->val$pad:Z if-nez v3, :cond_3 iget v3, p0, Lcom/google/common/collect/Iterators$4;->val$size:I if-ne v2, v3, :cond_2 goto :goto_2 .line 10 :cond_2 invoke-interface {v0, v1, v2}, Ljava/util/List;->subList(II)Ljava/util/List; move-result-object v0 :cond_3 :goto_2 return-object v0 .line 11 :cond_4 new-instance v0, Ljava/util/NoSuchElementException; invoke-direct {v0}, Ljava/util/NoSuchElementException;->()V throw v0 .end method