.class public Lcom/badlogic/gdx/utils/Array; .super Ljava/lang/Object; .source "Array.java" # interfaces .implements Ljava/lang/Iterable; # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/badlogic/gdx/utils/Array$ArrayIterable;, Lcom/badlogic/gdx/utils/Array$ArrayIterator; } .end annotation .annotation system Ldalvik/annotation/Signature; value = { "", "Ljava/lang/Object;", "Ljava/lang/Iterable<", "TT;>;" } .end annotation # instance fields .field public a:[Ljava/lang/Object; .annotation system Ldalvik/annotation/Signature; value = { "[TT;" } .end annotation .end field .field public b:I .field public c:Z .field private d:Lcom/badlogic/gdx/utils/Array$ArrayIterable; # direct methods .method public constructor ()V .locals 2 const/4 v0, 0x1 const/16 v1, 0x10 .line 42 invoke-direct {p0, v0, v1}, Lcom/badlogic/gdx/utils/Array;->(ZI)V return-void .end method .method public constructor (I)V .locals 1 const/4 v0, 0x1 .line 47 invoke-direct {p0, v0, p1}, Lcom/badlogic/gdx/utils/Array;->(ZI)V return-void .end method .method public constructor (Lcom/badlogic/gdx/utils/Array;)V .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lcom/badlogic/gdx/utils/Array<", "+TT;>;)V" } .end annotation .line 76 iget-boolean v0, p1, Lcom/badlogic/gdx/utils/Array;->c:Z iget v1, p1, Lcom/badlogic/gdx/utils/Array;->b:I iget-object v2, p1, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; invoke-virtual {v2}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v2 invoke-virtual {v2}, Ljava/lang/Class;->getComponentType()Ljava/lang/Class; move-result-object v2 invoke-direct {p0, v0, v1, v2}, Lcom/badlogic/gdx/utils/Array;->(ZILjava/lang/Class;)V .line 77 iget v0, p1, Lcom/badlogic/gdx/utils/Array;->b:I iput v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I .line 78 iget-object p1, p1, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v2, 0x0 invoke-static {p1, v2, v0, v2, v1}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V return-void .end method .method public constructor (Ljava/lang/Class;)V .locals 2 const/4 v0, 0x1 const/16 v1, 0x10 .line 69 invoke-direct {p0, v0, v1, p1}, Lcom/badlogic/gdx/utils/Array;->(ZILjava/lang/Class;)V return-void .end method .method public constructor (ZI)V .locals 0 .line 53 invoke-direct {p0}, Ljava/lang/Object;->()V .line 54 iput-boolean p1, p0, Lcom/badlogic/gdx/utils/Array;->c:Z .line 55 new-array p1, p2, [Ljava/lang/Object; check-cast p1, [Ljava/lang/Object; iput-object p1, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; return-void .end method .method public constructor (ZILjava/lang/Class;)V .locals 0 .line 62 invoke-direct {p0}, Ljava/lang/Object;->()V .line 63 iput-boolean p1, p0, Lcom/badlogic/gdx/utils/Array;->c:Z .line 64 invoke-static {p3, p2}, Lcom/badlogic/gdx/utils/reflect/ArrayReflection;->a(Ljava/lang/Class;I)Ljava/lang/Object; move-result-object p1 check-cast p1, [Ljava/lang/Object; iput-object p1, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; return-void .end method .method public constructor (Z[Ljava/lang/Object;II)V .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(Z[TT;II)V" } .end annotation .line 93 invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v0 invoke-virtual {v0}, Ljava/lang/Class;->getComponentType()Ljava/lang/Class; move-result-object v0 invoke-direct {p0, p1, p4, v0}, Lcom/badlogic/gdx/utils/Array;->(ZILjava/lang/Class;)V .line 94 iput p4, p0, Lcom/badlogic/gdx/utils/Array;->b:I .line 95 iget-object p1, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; iget p4, p0, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v0, 0x0 invoke-static {p2, p3, p1, v0, p4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V return-void .end method .method public constructor ([Ljava/lang/Object;)V .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "([TT;)V" } .end annotation .line 85 array-length v0, p1 const/4 v1, 0x1 const/4 v2, 0x0 invoke-direct {p0, v1, p1, v2, v0}, Lcom/badlogic/gdx/utils/Array;->(Z[Ljava/lang/Object;II)V return-void .end method .method public static varargs a([Ljava/lang/Object;)Lcom/badlogic/gdx/utils/Array; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "([TT;)", "Lcom/badlogic/gdx/utils/Array<", "TT;>;" } .end annotation .line 527 new-instance v0, Lcom/badlogic/gdx/utils/Array; invoke-direct {v0, p0}, Lcom/badlogic/gdx/utils/Array;->([Ljava/lang/Object;)V return-object v0 .end method # virtual methods .method public a()Ljava/lang/Object; .locals 4 .annotation system Ldalvik/annotation/Signature; value = { "()TT;" } .end annotation .line 296 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-eqz v0, :cond_0 .line 297 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I add-int/lit8 v0, v0, -0x1 iput v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I .line 298 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I aget-object v0, v0, v1 .line 299 iget-object v1, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; iget v2, p0, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v3, 0x0 aput-object v3, v1, v2 return-object v0 .line 296 :cond_0 new-instance v0, Ljava/lang/IllegalStateException; const-string v1, "Array is empty." invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .end method .method public a(I)Ljava/lang/Object; .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(I)TT;" } .end annotation .line 127 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-ge p1, v0, :cond_0 .line 128 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; aget-object p1, v0, p1 return-object p1 .line 127 :cond_0 new-instance v0, Ljava/lang/IndexOutOfBoundsException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "index can\'t be >= size: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string p1, " >= " invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; iget p1, p0, Lcom/badlogic/gdx/utils/Array;->b:I invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v0, p1}, Ljava/lang/IndexOutOfBoundsException;->(Ljava/lang/String;)V throw v0 .end method .method public a(Ljava/lang/String;)Ljava/lang/String; .locals 4 .line 504 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-nez v0, :cond_0 const-string p1, "" return-object p1 .line 505 :cond_0 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; .line 506 new-instance v1, Lcom/badlogic/gdx/utils/StringBuilder; const/16 v2, 0x20 invoke-direct {v1, v2}, Lcom/badlogic/gdx/utils/StringBuilder;->(I)V const/4 v2, 0x0 .line 507 aget-object v2, v0, v2 invoke-virtual {v1, v2}, Lcom/badlogic/gdx/utils/StringBuilder;->a(Ljava/lang/Object;)Lcom/badlogic/gdx/utils/StringBuilder; const/4 v2, 0x1 .line 508 :goto_0 iget v3, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-ge v2, v3, :cond_1 .line 509 invoke-virtual {v1, p1}, Lcom/badlogic/gdx/utils/StringBuilder;->b(Ljava/lang/String;)Lcom/badlogic/gdx/utils/StringBuilder; .line 510 aget-object v3, v0, v2 invoke-virtual {v1, v3}, Lcom/badlogic/gdx/utils/StringBuilder;->a(Ljava/lang/Object;)Lcom/badlogic/gdx/utils/StringBuilder; add-int/lit8 v2, v2, 0x1 goto :goto_0 .line 512 :cond_1 invoke-virtual {v1}, Lcom/badlogic/gdx/utils/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 return-object p1 .end method .method public a(II)V .locals 5 .line 247 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-ge p2, v0, :cond_3 if-gt p1, p2, :cond_2 .line 249 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; sub-int/2addr p2, p1 add-int/lit8 p2, p2, 0x1 .line 251 iget-boolean v1, p0, Lcom/badlogic/gdx/utils/Array;->c:Z if-eqz v1, :cond_0 add-int v1, p1, p2 .line 252 iget v2, p0, Lcom/badlogic/gdx/utils/Array;->b:I sub-int/2addr v2, v1 invoke-static {v0, v1, v0, p1, v2}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V goto :goto_1 .line 254 :cond_0 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I add-int/lit8 v1, v1, -0x1 const/4 v2, 0x0 :goto_0 if-ge v2, p2, :cond_1 add-int v3, p1, v2 sub-int v4, v1, v2 .line 256 aget-object v4, v0, v4 aput-object v4, v0, v3 add-int/lit8 v2, v2, 0x1 goto :goto_0 .line 258 :cond_1 :goto_1 iget p1, p0, Lcom/badlogic/gdx/utils/Array;->b:I sub-int/2addr p1, p2 iput p1, p0, Lcom/badlogic/gdx/utils/Array;->b:I return-void .line 248 :cond_2 new-instance v0, Ljava/lang/IndexOutOfBoundsException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "start can\'t be > end: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string p1, " > " invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v0, p1}, Ljava/lang/IndexOutOfBoundsException;->(Ljava/lang/String;)V throw v0 .line 247 :cond_3 new-instance p1, Ljava/lang/IndexOutOfBoundsException; new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "end can\'t be >= size: " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string p2, " >= " invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; iget p2, p0, Lcom/badlogic/gdx/utils/Array;->b:I invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p2 invoke-direct {p1, p2}, Ljava/lang/IndexOutOfBoundsException;->(Ljava/lang/String;)V throw p1 .end method .method public a(ILjava/lang/Object;)V .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(ITT;)V" } .end annotation .line 132 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-ge p1, v0, :cond_0 .line 133 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; aput-object p2, v0, p1 return-void .line 132 :cond_0 new-instance p2, Ljava/lang/IndexOutOfBoundsException; new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "index can\'t be >= size: " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string p1, " >= " invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; iget p1, p0, Lcom/badlogic/gdx/utils/Array;->b:I invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {p2, p1}, Ljava/lang/IndexOutOfBoundsException;->(Ljava/lang/String;)V throw p2 .end method .method public a(Lcom/badlogic/gdx/utils/Array;)V .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lcom/badlogic/gdx/utils/Array<", "+TT;>;)V" } .end annotation .line 105 iget v0, p1, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v1, 0x0 invoke-virtual {p0, p1, v1, v0}, Lcom/badlogic/gdx/utils/Array;->a(Lcom/badlogic/gdx/utils/Array;II)V return-void .end method .method public a(Lcom/badlogic/gdx/utils/Array;II)V .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lcom/badlogic/gdx/utils/Array<", "+TT;>;II)V" } .end annotation add-int v0, p2, p3 .line 109 iget v1, p1, Lcom/badlogic/gdx/utils/Array;->b:I if-gt v0, v1, :cond_0 .line 111 iget-object p1, p1, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; check-cast p1, [Ljava/lang/Object; invoke-virtual {p0, p1, p2, p3}, Lcom/badlogic/gdx/utils/Array;->a([Ljava/lang/Object;II)V return-void .line 110 :cond_0 new-instance v0, Ljava/lang/IllegalArgumentException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "start + count must be <= size: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string p2, " + " invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string p2, " <= " invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; iget p1, p1, Lcom/badlogic/gdx/utils/Array;->b:I invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;->(Ljava/lang/String;)V throw v0 .end method .method public a(Ljava/lang/Object;)V .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(TT;)V" } .end annotation .line 99 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; .line 100 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I array-length v2, v0 if-ne v1, v2, :cond_0 const/16 v0, 0x8 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I int-to-float v1, v1 const/high16 v2, 0x3fe00000 # 1.75f mul-float v1, v1, v2 float-to-int v1, v1 invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I move-result v0 invoke-virtual {p0, v0}, Lcom/badlogic/gdx/utils/Array;->e(I)[Ljava/lang/Object; move-result-object v0 .line 101 :cond_0 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I add-int/lit8 v2, v1, 0x1 iput v2, p0, Lcom/badlogic/gdx/utils/Array;->b:I aput-object p1, v0, v1 return-void .end method .method public a(Ljava/util/Comparator;)V .locals 4 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/Comparator<", "-TT;>;)V" } .end annotation .line 365 invoke-static {}, Lcom/badlogic/gdx/utils/Sort;->a()Lcom/badlogic/gdx/utils/Sort; move-result-object v0 iget-object v1, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; iget v2, p0, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v3, 0x0 invoke-virtual {v0, v1, p1, v3, v2}, Lcom/badlogic/gdx/utils/Sort;->a([Ljava/lang/Object;Ljava/util/Comparator;II)V return-void .end method .method public a([Ljava/lang/Object;II)V .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "([TT;II)V" } .end annotation .line 119 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; .line 120 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I add-int/2addr v1, p3 .line 121 array-length v2, v0 if-le v1, v2, :cond_0 const/16 v0, 0x8 int-to-float v1, v1 const/high16 v2, 0x3fe00000 # 1.75f mul-float v1, v1, v2 float-to-int v1, v1 invoke-static {v0, v1}, Ljava/lang/Math;->max(II)I move-result v0 invoke-virtual {p0, v0}, Lcom/badlogic/gdx/utils/Array;->e(I)[Ljava/lang/Object; move-result-object v0 .line 122 :cond_0 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I invoke-static {p1, p2, v0, v1, p3}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V .line 123 iget p1, p0, Lcom/badlogic/gdx/utils/Array;->b:I add-int/2addr p1, p3 iput p1, p0, Lcom/badlogic/gdx/utils/Array;->b:I return-void .end method .method public a(Ljava/lang/Object;Z)Z .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(TT;Z)Z" } .end annotation .line 162 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; .line 163 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v2, 0x1 sub-int/2addr v1, v2 if-nez p2, :cond_2 if-nez p1, :cond_0 goto :goto_1 :cond_0 :goto_0 if-ltz v1, :cond_4 add-int/lit8 p2, v1, -0x1 .line 169 aget-object v1, v0, v1 invoke-virtual {p1, v1}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result v1 if-eqz v1, :cond_1 return v2 :cond_1 move v1, p2 goto :goto_0 :cond_2 :goto_1 if-ltz v1, :cond_4 add-int/lit8 p2, v1, -0x1 .line 166 aget-object v1, v0, v1 if-ne v1, p1, :cond_3 return v2 :cond_3 move v1, p2 goto :goto_1 :cond_4 const/4 p1, 0x0 return p1 .end method .method public b(Ljava/lang/Object;Z)I .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(TT;Z)I" } .end annotation .line 179 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; const/4 v1, 0x0 if-nez p2, :cond_2 if-nez p1, :cond_0 goto :goto_1 .line 184 :cond_0 iget p2, p0, Lcom/badlogic/gdx/utils/Array;->b:I :goto_0 if-ge v1, p2, :cond_4 .line 185 aget-object v2, v0, v1 invoke-virtual {p1, v2}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result v2 if-eqz v2, :cond_1 return v1 :cond_1 add-int/lit8 v1, v1, 0x1 goto :goto_0 .line 181 :cond_2 :goto_1 iget p2, p0, Lcom/badlogic/gdx/utils/Array;->b:I :goto_2 if-ge v1, p2, :cond_4 .line 182 aget-object v2, v0, v1 if-ne v2, p1, :cond_3 return v1 :cond_3 add-int/lit8 v1, v1, 0x1 goto :goto_2 :cond_4 const/4 p1, -0x1 return p1 .end method .method public b()Ljava/lang/Object; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "()TT;" } .end annotation .line 305 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-eqz v0, :cond_0 .line 306 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I add-int/lit8 v1, v1, -0x1 aget-object v0, v0, v1 return-object v0 .line 305 :cond_0 new-instance v0, Ljava/lang/IllegalStateException; const-string v1, "Array is empty." invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .end method .method public b(I)Ljava/lang/Object; .locals 4 .annotation system Ldalvik/annotation/Signature; value = { "(I)TT;" } .end annotation .line 233 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-ge p1, v0, :cond_1 .line 234 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; .line 235 aget-object v1, v0, p1 .line 236 iget v2, p0, Lcom/badlogic/gdx/utils/Array;->b:I add-int/lit8 v2, v2, -0x1 iput v2, p0, Lcom/badlogic/gdx/utils/Array;->b:I .line 237 iget-boolean v2, p0, Lcom/badlogic/gdx/utils/Array;->c:Z if-eqz v2, :cond_0 add-int/lit8 v2, p1, 0x1 .line 238 iget v3, p0, Lcom/badlogic/gdx/utils/Array;->b:I sub-int/2addr v3, p1 invoke-static {v0, v2, v0, p1, v3}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V goto :goto_0 .line 240 :cond_0 iget v2, p0, Lcom/badlogic/gdx/utils/Array;->b:I aget-object v2, v0, v2 aput-object v2, v0, p1 .line 241 :goto_0 iget p1, p0, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v2, 0x0 aput-object v2, v0, p1 return-object v1 .line 233 :cond_1 new-instance v0, Ljava/lang/IndexOutOfBoundsException; new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "index can\'t be >= size: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string p1, " >= " invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; iget p1, p0, Lcom/badlogic/gdx/utils/Array;->b:I invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 invoke-direct {v0, p1}, Ljava/lang/IndexOutOfBoundsException;->(Ljava/lang/String;)V throw v0 .end method .method public c()Ljava/lang/Object; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "()TT;" } .end annotation .line 311 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-eqz v0, :cond_0 .line 312 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; const/4 v1, 0x0 aget-object v0, v0, v1 return-object v0 .line 311 :cond_0 new-instance v0, Ljava/lang/IllegalStateException; const-string v1, "Array is empty." invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;->(Ljava/lang/String;)V throw v0 .end method .method public c(Ljava/lang/Object;Z)Z .locals 5 .annotation system Ldalvik/annotation/Signature; value = { "(TT;Z)Z" } .end annotation .line 212 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; const/4 v1, 0x0 const/4 v2, 0x1 if-nez p2, :cond_2 if-nez p1, :cond_0 goto :goto_1 .line 221 :cond_0 iget p2, p0, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v3, 0x0 :goto_0 if-ge v3, p2, :cond_4 .line 222 aget-object v4, v0, v3 invoke-virtual {p1, v4}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result v4 if-eqz v4, :cond_1 .line 223 invoke-virtual {p0, v3}, Lcom/badlogic/gdx/utils/Array;->b(I)Ljava/lang/Object; return v2 :cond_1 add-int/lit8 v3, v3, 0x1 goto :goto_0 .line 214 :cond_2 :goto_1 iget p2, p0, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v3, 0x0 :goto_2 if-ge v3, p2, :cond_4 .line 215 aget-object v4, v0, v3 if-ne v4, p1, :cond_3 .line 216 invoke-virtual {p0, v3}, Lcom/badlogic/gdx/utils/Array;->b(I)Ljava/lang/Object; return v2 :cond_3 add-int/lit8 v3, v3, 0x1 goto :goto_2 :cond_4 return v1 .end method .method public c(I)[Ljava/lang/Object; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(I)[TT;" } .end annotation .line 334 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I add-int/2addr v0, p1 .line 335 iget-object p1, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; array-length p1, p1 if-le v0, p1, :cond_0 const/16 p1, 0x8 invoke-static {p1, v0}, Ljava/lang/Math;->max(II)I move-result p1 invoke-virtual {p0, p1}, Lcom/badlogic/gdx/utils/Array;->e(I)[Ljava/lang/Object; .line 336 :cond_0 iget-object p1, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; return-object p1 .end method .method public d()V .locals 5 .line 316 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; .line 317 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v2, 0x0 const/4 v3, 0x0 :goto_0 if-ge v3, v1, :cond_0 const/4 v4, 0x0 .line 318 aput-object v4, v0, v3 add-int/lit8 v3, v3, 0x1 goto :goto_0 .line 319 :cond_0 iput v2, p0, Lcom/badlogic/gdx/utils/Array;->b:I return-void .end method .method public d(I)[Ljava/lang/Object; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "(I)[TT;" } .end annotation .line 342 invoke-virtual {p0, p1}, Lcom/badlogic/gdx/utils/Array;->f(I)V .line 343 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; array-length v0, v0 if-le p1, v0, :cond_0 const/16 v0, 0x8 invoke-static {v0, p1}, Ljava/lang/Math;->max(II)I move-result v0 invoke-virtual {p0, v0}, Lcom/badlogic/gdx/utils/Array;->e(I)[Ljava/lang/Object; .line 344 :cond_0 iput p1, p0, Lcom/badlogic/gdx/utils/Array;->b:I .line 345 iget-object p1, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; return-object p1 .end method .method public e()[Ljava/lang/Object; .locals 2 .annotation system Ldalvik/annotation/Signature; value = { "()[TT;" } .end annotation .line 326 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; array-length v0, v0 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-eq v0, v1, :cond_0 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I invoke-virtual {p0, v0}, Lcom/badlogic/gdx/utils/Array;->e(I)[Ljava/lang/Object; .line 327 :cond_0 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; return-object v0 .end method .method protected e(I)[Ljava/lang/Object; .locals 3 .annotation system Ldalvik/annotation/Signature; value = { "(I)[TT;" } .end annotation .line 350 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; .line 351 invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v1 invoke-virtual {v1}, Ljava/lang/Class;->getComponentType()Ljava/lang/Class; move-result-object v1 invoke-static {v1, p1}, Lcom/badlogic/gdx/utils/reflect/ArrayReflection;->a(Ljava/lang/Class;I)Ljava/lang/Object; move-result-object p1 check-cast p1, [Ljava/lang/Object; .line 352 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I array-length v2, p1 invoke-static {v1, v2}, Ljava/lang/Math;->min(II)I move-result v1 const/4 v2, 0x0 invoke-static {v0, v2, p1, v2, v1}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V .line 353 iput-object p1, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; return-object p1 .end method .method public equals(Ljava/lang/Object;)Z .locals 7 const/4 v0, 0x1 if-ne p1, p0, :cond_0 return v0 .line 473 :cond_0 iget-boolean v1, p0, Lcom/badlogic/gdx/utils/Array;->c:Z const/4 v2, 0x0 if-nez v1, :cond_1 return v2 .line 474 :cond_1 instance-of v1, p1, Lcom/badlogic/gdx/utils/Array; if-nez v1, :cond_2 return v2 .line 475 :cond_2 check-cast p1, Lcom/badlogic/gdx/utils/Array; .line 476 iget-boolean v1, p1, Lcom/badlogic/gdx/utils/Array;->c:Z if-nez v1, :cond_3 return v2 .line 477 :cond_3 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I .line 478 iget v3, p1, Lcom/badlogic/gdx/utils/Array;->b:I if-eq v1, v3, :cond_4 return v2 .line 479 :cond_4 iget-object v3, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; .line 480 iget-object p1, p1, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; const/4 v4, 0x0 :goto_0 if-ge v4, v1, :cond_8 .line 482 aget-object v5, v3, v4 .line 483 aget-object v6, p1, v4 if-nez v5, :cond_5 if-nez v6, :cond_6 goto :goto_1 .line 484 :cond_5 invoke-virtual {v5, v6}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z move-result v5 if-nez v5, :cond_7 :cond_6 return v2 :cond_7 :goto_1 add-int/lit8 v4, v4, 0x1 goto :goto_0 :cond_8 return v0 .end method .method public f(I)V .locals 3 .line 435 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-gt v0, p1, :cond_0 return-void :cond_0 move v0, p1 .line 436 :goto_0 iget v1, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-ge v0, v1, :cond_1 .line 437 iget-object v1, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; const/4 v2, 0x0 aput-object v2, v1, v0 add-int/lit8 v0, v0, 0x1 goto :goto_0 .line 438 :cond_1 iput p1, p0, Lcom/badlogic/gdx/utils/Array;->b:I return-void .end method .method public hashCode()I .locals 5 .line 460 iget-boolean v0, p0, Lcom/badlogic/gdx/utils/Array;->c:Z if-nez v0, :cond_0 invoke-super {p0}, Ljava/lang/Object;->hashCode()I move-result v0 return v0 .line 461 :cond_0 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; const/4 v1, 0x0 .line 463 iget v2, p0, Lcom/badlogic/gdx/utils/Array;->b:I const/4 v3, 0x1 :goto_0 if-ge v1, v2, :cond_2 mul-int/lit8 v3, v3, 0x1f .line 465 aget-object v4, v0, v1 if-eqz v4, :cond_1 .line 466 invoke-virtual {v4}, Ljava/lang/Object;->hashCode()I move-result v4 add-int/2addr v3, v4 :cond_1 add-int/lit8 v1, v1, 0x1 goto :goto_0 :cond_2 return v3 .end method .method public iterator()Ljava/util/Iterator; .locals 1 .annotation system Ldalvik/annotation/Signature; value = { "()", "Ljava/util/Iterator<", "TT;>;" } .end annotation .line 417 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->d:Lcom/badlogic/gdx/utils/Array$ArrayIterable; if-nez v0, :cond_0 new-instance v0, Lcom/badlogic/gdx/utils/Array$ArrayIterable; invoke-direct {v0, p0}, Lcom/badlogic/gdx/utils/Array$ArrayIterable;->(Lcom/badlogic/gdx/utils/Array;)V iput-object v0, p0, Lcom/badlogic/gdx/utils/Array;->d:Lcom/badlogic/gdx/utils/Array$ArrayIterable; .line 418 :cond_0 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->d:Lcom/badlogic/gdx/utils/Array$ArrayIterable; invoke-virtual {v0}, Lcom/badlogic/gdx/utils/Array$ArrayIterable;->iterator()Ljava/util/Iterator; move-result-object v0 return-object v0 .end method .method public toString()Ljava/lang/String; .locals 4 .line 490 iget v0, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-nez v0, :cond_0 const-string v0, "[]" return-object v0 .line 491 :cond_0 iget-object v0, p0, Lcom/badlogic/gdx/utils/Array;->a:[Ljava/lang/Object; .line 492 new-instance v1, Lcom/badlogic/gdx/utils/StringBuilder; const/16 v2, 0x20 invoke-direct {v1, v2}, Lcom/badlogic/gdx/utils/StringBuilder;->(I)V const/16 v2, 0x5b .line 493 invoke-virtual {v1, v2}, Lcom/badlogic/gdx/utils/StringBuilder;->b(C)Lcom/badlogic/gdx/utils/StringBuilder; const/4 v2, 0x0 .line 494 aget-object v2, v0, v2 invoke-virtual {v1, v2}, Lcom/badlogic/gdx/utils/StringBuilder;->a(Ljava/lang/Object;)Lcom/badlogic/gdx/utils/StringBuilder; const/4 v2, 0x1 .line 495 :goto_0 iget v3, p0, Lcom/badlogic/gdx/utils/Array;->b:I if-ge v2, v3, :cond_1 const-string v3, ", " .line 496 invoke-virtual {v1, v3}, Lcom/badlogic/gdx/utils/StringBuilder;->b(Ljava/lang/String;)Lcom/badlogic/gdx/utils/StringBuilder; .line 497 aget-object v3, v0, v2 invoke-virtual {v1, v3}, Lcom/badlogic/gdx/utils/StringBuilder;->a(Ljava/lang/Object;)Lcom/badlogic/gdx/utils/StringBuilder; add-int/lit8 v2, v2, 0x1 goto :goto_0 :cond_1 const/16 v0, 0x5d .line 499 invoke-virtual {v1, v0}, Lcom/badlogic/gdx/utils/StringBuilder;->b(C)Lcom/badlogic/gdx/utils/StringBuilder; .line 500 invoke-virtual {v1}, Lcom/badlogic/gdx/utils/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .end method