Preconditions.smali
.class public final Lcom/google/android/gms/common/internal/Preconditions;
.super Ljava/lang/Object;
# direct methods
.method private constructor <init>()V
.registers 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/lang/AssertionError;
const-string v1, "Uninstantiable"
invoke-direct {v0, v1}, Ljava/lang/AssertionError;-><init>(Ljava/lang/Object;)V
throw v0
.end method
.method public static checkArgument(Z)V
.registers 2
if-nez p0, :cond_8
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-direct {v0}, Ljava/lang/IllegalArgumentException;-><init>()V
throw v0
:cond_8
return-void
.end method
.method public static checkArgument(ZLjava/lang/Object;)V
.registers 4
if-nez p0, :cond_c
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_c
return-void
.end method
.method public static varargs checkArgument(ZLjava/lang/String;[Ljava/lang/Object;)V
.registers 5
if-nez p0, :cond_c
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-static {p1, p2}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_c
return-void
.end method
.method public static checkElementIndex(II)I
.registers 3
const-string v0, "index"
invoke-static {p0, p1, v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkElementIndex(IILjava/lang/String;)I
move-result v0
return v0
.end method
.method public static checkElementIndex(IILjava/lang/String;)I
.registers 9
const/4 v5, 0x2
const/4 v4, 0x1
const/4 v3, 0x0
if-ltz p0, :cond_7
if-lt p0, p1, :cond_54
:cond_7
new-instance v1, Ljava/lang/IndexOutOfBoundsException;
if-gez p0, :cond_1f
const-string v0, "%s (%s) must not be negative"
new-array v2, v5, [Ljava/lang/Object;
aput-object p2, v2, v3
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
aput-object v3, v2, v4
invoke-static {v0, v2}, Lcom/google/android/gms/common/internal/Preconditions;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
:goto_1b
invoke-direct {v1, v0}, Ljava/lang/IndexOutOfBoundsException;-><init>(Ljava/lang/String;)V
throw v1
:cond_1f
if-gez p1, :cond_3c
new-instance v0, Ljava/lang/IllegalArgumentException;
const/16 v1, 0x1a
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const-string v1, "negative size: "
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_3c
const-string v0, "%s (%s) must be less than size (%s)"
const/4 v2, 0x3
new-array v2, v2, [Ljava/lang/Object;
aput-object p2, v2, v3
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
aput-object v3, v2, v4
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
aput-object v3, v2, v5
invoke-static {v0, v2}, Lcom/google/android/gms/common/internal/Preconditions;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
goto :goto_1b
:cond_54
return p0
.end method
.method public static checkHandlerThread(Landroid/os/Handler;)V
.registers 3
invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
move-result-object v0
invoke-virtual {p0}, Landroid/os/Handler;->getLooper()Landroid/os/Looper;
move-result-object v1
if-eq v0, v1, :cond_12
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "Must be called on the handler thread"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:cond_12
return-void
.end method
.method public static checkMainThread(Ljava/lang/String;)V
.registers 2
invoke-static {}, Lcom/google/android/gms/common/util/ThreadUtils;->isMainThread()Z
move-result v0
if-nez v0, :cond_c
new-instance v0, Ljava/lang/IllegalStateException;
invoke-direct {v0, p0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:cond_c
return-void
.end method
.method public static checkNotEmpty(Ljava/lang/String;)Ljava/lang/String;
.registers 3
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_e
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Given String is empty or null"
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_e
return-object p0
.end method
.method public static checkNotEmpty(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/String;
.registers 4
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_10
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_10
return-object p0
.end method
.method public static checkNotMainThread()V
.registers 1
const-string v0, "Must not be called on the main application thread"
invoke-static {v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkNotMainThread(Ljava/lang/String;)V
return-void
.end method
.method public static checkNotMainThread(Ljava/lang/String;)V
.registers 2
invoke-static {}, Lcom/google/android/gms/common/util/ThreadUtils;->isMainThread()Z
move-result v0
if-eqz v0, :cond_c
new-instance v0, Ljava/lang/IllegalStateException;
invoke-direct {v0, p0}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:cond_c
return-void
.end method
.method public static checkNotNull(Ljava/lang/Object;)Ljava/lang/Object;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(TT;)TT;"
}
.end annotation
if-nez p0, :cond_a
new-instance v0, Ljava/lang/NullPointerException;
const-string v1, "null reference"
invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw v0
:cond_a
return-object p0
.end method
.method public static checkNotNull(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(TT;",
"Ljava/lang/Object;",
")TT;"
}
.end annotation
if-nez p0, :cond_c
new-instance v0, Ljava/lang/NullPointerException;
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw v0
:cond_c
return-object p0
.end method
.method public static checkNotNullIfPresent(Ljava/lang/String;Landroid/content/ContentValues;)V
.registers 5
invoke-virtual {p1, p0}, Landroid/content/ContentValues;->containsKey(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_1c
invoke-virtual {p1, p0}, Landroid/content/ContentValues;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
if-nez v0, :cond_1c
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-static {p0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
const-string v2, " cannot be set to null"
invoke-virtual {v1, v2}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_1c
return-void
.end method
.method public static checkNotZero(I)I
.registers 3
if-nez p0, :cond_a
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Given Integer is zero"
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_a
return p0
.end method
.method public static checkNotZero(ILjava/lang/Object;)I
.registers 4
if-nez p0, :cond_c
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_c
return p0
.end method
.method public static checkNotZero(J)J
.registers 4
const-wide/16 v0, 0x0
cmp-long v0, p0, v0
if-nez v0, :cond_e
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Given Long is zero"
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_e
return-wide p0
.end method
.method public static checkNotZero(JLjava/lang/Object;)J
.registers 5
const-wide/16 v0, 0x0
cmp-long v0, p0, v0
if-nez v0, :cond_10
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-static {p2}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_10
return-wide p0
.end method
.method public static checkPositionIndex(II)I
.registers 3
const-string v0, "index"
invoke-static {p0, p1, v0}, Lcom/google/android/gms/common/internal/Preconditions;->checkPositionIndex(IILjava/lang/String;)I
move-result v0
return v0
.end method
.method public static checkPositionIndex(IILjava/lang/String;)I
.registers 5
if-ltz p0, :cond_4
if-le p0, p1, :cond_e
:cond_4
new-instance v0, Ljava/lang/IndexOutOfBoundsException;
invoke-static {p0, p1, p2}, Lcom/google/android/gms/common/internal/Preconditions;->zza(IILjava/lang/String;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IndexOutOfBoundsException;-><init>(Ljava/lang/String;)V
throw v0
:cond_e
return p0
.end method
.method public static checkPositionIndexes(III)V
.registers 8
if-ltz p0, :cond_6
if-lt p1, p0, :cond_6
if-le p1, p2, :cond_39
:cond_6
new-instance v1, Ljava/lang/IndexOutOfBoundsException;
if-ltz p0, :cond_c
if-le p0, p2, :cond_16
:cond_c
const-string v0, "start index"
invoke-static {p0, p2, v0}, Lcom/google/android/gms/common/internal/Preconditions;->zza(IILjava/lang/String;)Ljava/lang/String;
move-result-object v0
:goto_12
invoke-direct {v1, v0}, Ljava/lang/IndexOutOfBoundsException;-><init>(Ljava/lang/String;)V
throw v1
:cond_16
if-ltz p1, :cond_1a
if-le p1, p2, :cond_21
:cond_1a
const-string v0, "end index"
invoke-static {p1, p2, v0}, Lcom/google/android/gms/common/internal/Preconditions;->zza(IILjava/lang/String;)Ljava/lang/String;
move-result-object v0
goto :goto_12
:cond_21
const-string v0, "end index (%s) must not be less than start index (%s)"
const/4 v2, 0x2
new-array v2, v2, [Ljava/lang/Object;
const/4 v3, 0x0
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v2, v3
const/4 v3, 0x1
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v4
aput-object v4, v2, v3
invoke-static {v0, v2}, Lcom/google/android/gms/common/internal/Preconditions;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
goto :goto_12
:cond_39
return-void
.end method
.method public static checkState(Z)V
.registers 2
if-nez p0, :cond_8
new-instance v0, Ljava/lang/IllegalStateException;
invoke-direct {v0}, Ljava/lang/IllegalStateException;-><init>()V
throw v0
:cond_8
return-void
.end method
.method public static checkState(ZLjava/lang/Object;)V
.registers 4
if-nez p0, :cond_c
new-instance v0, Ljava/lang/IllegalStateException;
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:cond_c
return-void
.end method
.method public static varargs checkState(ZLjava/lang/String;[Ljava/lang/Object;)V
.registers 5
if-nez p0, :cond_c
new-instance v0, Ljava/lang/IllegalStateException;
invoke-static {p1, p2}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
:cond_c
return-void
.end method
.method public static checkTag(Ljava/lang/String;)Ljava/lang/String;
.registers 3
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_e
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Tag must not be empty or null"
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_e
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v0
const/16 v1, 0x17
if-le v0, v1, :cond_1e
new-instance v0, Ljava/lang/IllegalArgumentException;
const-string v1, "Tag must not be greater than 23 chars."
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_1e
return-object p0
.end method
.method private static varargs format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
.registers 8
const/4 v0, 0x0
new-instance v2, Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v1
array-length v3, p1
mul-int/lit8 v3, v3, 0x10
add-int/2addr v1, v3
invoke-direct {v2, v1}, Ljava/lang/StringBuilder;-><init>(I)V
move v1, v0
:goto_f
array-length v3, p1
if-ge v0, v3, :cond_2f
const-string v3, "%s"
invoke-virtual {p0, v3, v1}, Ljava/lang/String;->indexOf(Ljava/lang/String;I)I
move-result v3
const/4 v4, -0x1
if-eq v3, v4, :cond_2f
invoke-virtual {p0, v1, v3}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v1, v0, 0x1
aget-object v0, p1, v0
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
add-int/lit8 v0, v3, 0x2
move v5, v1
move v1, v0
move v0, v5
goto :goto_f
:cond_2f
invoke-virtual {p0, v1}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
array-length v1, p1
if-ge v0, v1, :cond_5c
const-string v1, " ["
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v1, v0, 0x1
aget-object v0, p1, v0
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move v0, v1
:goto_46
array-length v1, p1
if-ge v0, v1, :cond_57
const-string v1, ", "
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v1, v0, 0x1
aget-object v0, p1, v0
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move v0, v1
goto :goto_46
:cond_57
const-string v0, "]"
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:cond_5c
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method private static zza(IILjava/lang/String;)Ljava/lang/String;
.registers 8
const/4 v4, 0x2
const/4 v3, 0x1
const/4 v2, 0x0
if-gez p0, :cond_16
const-string v0, "%s (%s) must not be negative"
new-array v1, v4, [Ljava/lang/Object;
aput-object p2, v1, v2
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
aput-object v2, v1, v3
invoke-static {v0, v1}, Lcom/google/android/gms/common/internal/Preconditions;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
:goto_15
return-object v0
:cond_16
if-gez p1, :cond_33
new-instance v0, Ljava/lang/IllegalArgumentException;
const/16 v1, 0x1a
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const-string v1, "negative size: "
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
:cond_33
const-string v0, "%s (%s) must not be greater than size (%s)"
const/4 v1, 0x3
new-array v1, v1, [Ljava/lang/Object;
aput-object p2, v1, v2
invoke-static {p0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
aput-object v2, v1, v3
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v2
aput-object v2, v1, v4
invoke-static {v0, v1}, Lcom/google/android/gms/common/internal/Preconditions;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
goto :goto_15
.end method