Rabbit-R1/android (non root)/smali/smali_classes2/androidx/sqlite/db/SupportSQLiteQueryBuilder.smali

531 lines
17 KiB
Smali
Raw Normal View History

2024-05-21 21:08:36 +00:00
.class public final Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
.super Ljava/lang/Object;
.source "SupportSQLiteQueryBuilder.kt"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Landroidx/sqlite/db/SupportSQLiteQueryBuilder$Companion;
}
.end annotation
.annotation system Ldalvik/annotation/SourceDebugExtension;
value = "SMAP\nSupportSQLiteQueryBuilder.kt\nKotlin\n*S Kotlin\n*F\n+ 1 SupportSQLiteQueryBuilder.kt\nandroidx/sqlite/db/SupportSQLiteQueryBuilder\n+ 2 fake.kt\nkotlin/jvm/internal/FakeKt\n*L\n1#1,186:1\n1#2:187\n*E\n"
.end annotation
.annotation runtime Lkotlin/Metadata;
d1 = {
"\u0000:\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0000\n\u0002\u0010\u000e\n\u0002\u0008\u0002\n\u0002\u0010\u0011\n\u0002\u0008\u0004\n\u0002\u0010\u000b\n\u0002\u0008\u0007\n\u0002\u0018\u0002\n\u0002\u0008\u0002\n\u0002\u0010\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0008\u0006\u0018\u0000 \u001d2\u00020\u0001:\u0001\u001dB\u000f\u0008\u0002\u0012\u0006\u0010\u0002\u001a\u00020\u0003\u00a2\u0006\u0002\u0010\u0004J\u001d\u0010\u0008\u001a\u00020\u00002\u0010\u0010\u0008\u001a\u000c\u0012\u0006\u0008\u0001\u0012\u00020\u0003\u0018\u00010\u0006\u00a2\u0006\u0002\u0010\u0011J\u0006\u0010\u0012\u001a\u00020\u0013J\u0006\u0010\n\u001a\u00020\u0000J\u0010\u0010\u000c\u001a\u00020\u00002\u0008\u0010\u000c\u001a\u0004\u0018\u00010\u0003J\u0010\u0010\r\u001a\u00020\u00002\u0008\u0010\r\u001a\u0004\u0018\u00010\u0003J\u000e\u0010\u000e\u001a\u00020\u00002\u0006\u0010\u000e\u001a\u00020\u0003J\u0010\u0010\u000f\u001a\u00020\u00002\u0008\u0010\u000f\u001a\u0004\u0018\u00010\u0003J)\u0010\u0010\u001a\u00020\u00002\u0008\u0010\u0010\u001a\u0004\u0018\u00010\u00032\u0012\u0010\u0005\u001a\u000e\u0012\u0008\u0008\u0001\u0012\u0004\u0018\u00010\u0001\u0018\u00010\u0006\u00a2\u0006\u0002\u0010\u0014J\"\u0010\u0015\u001a\u00020\u0016*\u00060\u0017j\u0002`\u00182\u0006\u0010\u0019\u001a\u00020\u00032\u0008\u0010\u001a\u001a\u0004\u0018\u00010\u0003H\u0002J%\u0010\u001b\u001a\u00020\u0016*\u00060\u0017j\u0002`\u00182\u000e\u0010\u0008\u001a\n\u0012\u0006\u0008\u0001\u0012\u00020\u00030\u0006H\u0002\u00a2\u0006\u0002\u0010\u001cR\u001c\u0010\u0005\u001a\u000e\u0012\u0008\u0008\u0001\u0012\u0004\u0018\u00010\u0001\u0018\u00010\u0006X\u0082\u000e\u00a2\u0006\u0004\n\u0002\u0010\u0007R\u001a\u0010\u0008\u001a\u000c\u0012\u0006\u0008\u0001\u0012\u00020\u0003\u0018\u00010\u0006X\u0082\u000e\u00a2\u0006\u0004\n\u0002\u0010\tR\u000e\u0010\n\u001a\u00020\u000bX\u0082\u000e\u00a2\u0006\u0002\n\u0000R\u0010\u0010\u000c\u001a\u0004\u0018\u00010\u0003X\u0082\u000e\u00a2\u0006\u0002\n\u0000R\u0010\u0010\r\u001a\u0004\u0018\u00010\u0003X\u0082\u000e\u00a2\u0006\u0002\n\u0000R\u0010\u0010\u000e\u001a\u0004\u0018\u00010\u0003X\u0082\u000e\u00a2\u0006\u0002\n\u0000R\u0010\u0010\u000f\u001a\u0004\u0018\u00010\u0003X\u0082\u000e\u00a2\u0006\u0002\n\u0000R\u0010\u0010\u0010\u001a\u0004\u0018\u00010\u0003X\u0082\u000e\u00a2\u0006\u0002\n\u0000R\u000e\u0010\u0002\u001a\u00020\u0003X\u0082\u0004\u00a2\u0006\u0002\n\u0000\u00a8\u0006\u001e"
}
d2 = {
"Landroidx/sqlite/db/SupportSQLiteQueryBuilder;",
"",
"table",
"",
"(Ljava/lang/String;)V",
"bindArgs",
"",
"[Ljava/lang/Object;",
"columns",
"[Ljava/lang/String;",
"distinct",
"",
"groupBy",
"having",
"limit",
"orderBy",
"selection",
"([Ljava/lang/String;)Landroidx/sqlite/db/SupportSQLiteQueryBuilder;",
"create",
"Landroidx/sqlite/db/SupportSQLiteQuery;",
"(Ljava/lang/String;[Ljava/lang/Object;)Landroidx/sqlite/db/SupportSQLiteQueryBuilder;",
"appendClause",
"",
"Ljava/lang/StringBuilder;",
"Lkotlin/text/StringBuilder;",
"name",
"clause",
"appendColumns",
"(Ljava/lang/StringBuilder;[Ljava/lang/String;)V",
"Companion",
"sqlite_release"
}
k = 0x1
mv = {
0x1,
0x7,
0x1
}
xi = 0x30
.end annotation
# static fields
.field public static final Companion:Landroidx/sqlite/db/SupportSQLiteQueryBuilder$Companion;
.field private static final limitPattern:Ljava/util/regex/Pattern;
# instance fields
.field private bindArgs:[Ljava/lang/Object;
.field private columns:[Ljava/lang/String;
.field private distinct:Z
.field private groupBy:Ljava/lang/String;
.field private having:Ljava/lang/String;
.field private limit:Ljava/lang/String;
.field private orderBy:Ljava/lang/String;
.field private selection:Ljava/lang/String;
.field private final table:Ljava/lang/String;
# direct methods
.method static constructor <clinit>()V
.locals 2
new-instance v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder$Companion;
const/4 v1, 0x0
invoke-direct {v0, v1}, Landroidx/sqlite/db/SupportSQLiteQueryBuilder$Companion;-><init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
sput-object v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->Companion:Landroidx/sqlite/db/SupportSQLiteQueryBuilder$Companion;
const-string v0, "\\s*\\d+\\s*(,\\s*\\d+\\s*)?"
.line 172
invoke-static {v0}, Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern;
move-result-object v0
sput-object v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->limitPattern:Ljava/util/regex/Pattern;
return-void
.end method
.method private constructor <init>(Ljava/lang/String;)V
.locals 0
.line 23
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->table:Ljava/lang/String;
return-void
.end method
.method public synthetic constructor <init>(Ljava/lang/String;Lkotlin/jvm/internal/DefaultConstructorMarker;)V
.locals 0
invoke-direct {p0, p1}, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;-><init>(Ljava/lang/String;)V
return-void
.end method
.method private final appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V
.locals 0
.line 149
move-object p0, p3
check-cast p0, Ljava/lang/CharSequence;
if-eqz p0, :cond_1
invoke-interface {p0}, Ljava/lang/CharSequence;->length()I
move-result p0
if-nez p0, :cond_0
goto :goto_0
.line 150
:cond_0
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 151
invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:cond_1
:goto_0
return-void
.end method
.method private final appendColumns(Ljava/lang/StringBuilder;[Ljava/lang/String;)V
.locals 3
.line 160
array-length p0, p2
const/4 v0, 0x0
:goto_0
if-ge v0, p0, :cond_1
.line 162
aget-object v1, p2, v0
if-lez v0, :cond_0
const-string v2, ", "
.line 164
invoke-virtual {p1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
.line 166
:cond_0
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_1
const/16 p0, 0x20
.line 168
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
return-void
.end method
.method public static final builder(Ljava/lang/String;)Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
.locals 1
.annotation runtime Lkotlin/jvm/JvmStatic;
.end annotation
sget-object v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->Companion:Landroidx/sqlite/db/SupportSQLiteQueryBuilder$Companion;
invoke-virtual {v0, p0}, Landroidx/sqlite/db/SupportSQLiteQueryBuilder$Companion;->builder(Ljava/lang/String;)Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
move-result-object p0
return-object p0
.end method
# virtual methods
.method public final columns([Ljava/lang/String;)Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
.locals 1
.line 49
move-object v0, p0
check-cast v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
iput-object p1, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->columns:[Ljava/lang/String;
return-object p0
.end method
.method public final create()Landroidx/sqlite/db/SupportSQLiteQuery;
.locals 3
iget-object v0, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->groupBy:Ljava/lang/String;
.line 124
check-cast v0, Ljava/lang/CharSequence;
if-eqz v0, :cond_0
invoke-interface {v0}, Ljava/lang/CharSequence;->length()I
move-result v0
if-nez v0, :cond_2
:cond_0
iget-object v0, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->having:Ljava/lang/String;
check-cast v0, Ljava/lang/CharSequence;
if-eqz v0, :cond_2
invoke-interface {v0}, Ljava/lang/CharSequence;->length()I
move-result v0
if-nez v0, :cond_1
goto :goto_0
:cond_1
new-instance p0, Ljava/lang/IllegalArgumentException;
const-string v0, "HAVING clauses are only permitted when using a groupBy clause"
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p0, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p0
.line 127
:cond_2
:goto_0
new-instance v0, Ljava/lang/StringBuilder;
const/16 v1, 0x78
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(I)V
const-string v1, "SELECT "
.line 128
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-boolean v1, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->distinct:Z
if-eqz v1, :cond_3
const-string v1, "DISTINCT "
.line 130
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:cond_3
iget-object v1, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->columns:[Ljava/lang/String;
if-eqz v1, :cond_5
.line 132
array-length v2, v1
if-nez v2, :cond_4
goto :goto_1
.line 133
:cond_4
invoke-static {v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNull(Ljava/lang/Object;)V
invoke-direct {p0, v0, v1}, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->appendColumns(Ljava/lang/StringBuilder;[Ljava/lang/String;)V
goto :goto_2
:cond_5
:goto_1
const-string v1, "* "
.line 135
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
:goto_2
const-string v1, "FROM "
.line 137
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->table:Ljava/lang/String;
.line 138
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, " WHERE "
iget-object v2, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->selection:Ljava/lang/String;
.line 139
invoke-direct {p0, v0, v1, v2}, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V
const-string v1, " GROUP BY "
iget-object v2, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->groupBy:Ljava/lang/String;
.line 140
invoke-direct {p0, v0, v1, v2}, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V
const-string v1, " HAVING "
iget-object v2, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->having:Ljava/lang/String;
.line 141
invoke-direct {p0, v0, v1, v2}, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V
const-string v1, " ORDER BY "
iget-object v2, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->orderBy:Ljava/lang/String;
.line 142
invoke-direct {p0, v0, v1, v2}, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V
const-string v1, " LIMIT "
iget-object v2, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->limit:Ljava/lang/String;
.line 143
invoke-direct {p0, v0, v1, v2}, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->appendClause(Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V
.line 127
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "StringBuilder(capacity).\u2026builderAction).toString()"
invoke-static {v0, v1}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullExpressionValue(Ljava/lang/Object;Ljava/lang/String;)V
.line 145
new-instance v1, Landroidx/sqlite/db/SimpleSQLiteQuery;
iget-object p0, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->bindArgs:[Ljava/lang/Object;
invoke-direct {v1, v0, p0}, Landroidx/sqlite/db/SimpleSQLiteQuery;-><init>(Ljava/lang/String;[Ljava/lang/Object;)V
check-cast v1, Landroidx/sqlite/db/SupportSQLiteQuery;
return-object v1
.end method
.method public final distinct()Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
.locals 1
.line 38
move-object v0, p0
check-cast v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
const/4 v0, 0x1
iput-boolean v0, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->distinct:Z
return-object p0
.end method
.method public final groupBy(Ljava/lang/String;)Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
.locals 1
.line 76
move-object v0, p0
check-cast v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
iput-object p1, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->groupBy:Ljava/lang/String;
return-object p0
.end method
.method public final having(Ljava/lang/String;)Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
.locals 1
.line 87
move-object v0, p0
check-cast v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
iput-object p1, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->having:Ljava/lang/String;
return-object p0
.end method
.method public final limit(Ljava/lang/String;)Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
.locals 2
const-string v0, "limit"
invoke-static {p1, v0}, Lkotlin/jvm/internal/Intrinsics;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V
.line 109
move-object v0, p0
check-cast v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
sget-object v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->limitPattern:Ljava/util/regex/Pattern;
.line 111
move-object v1, p1
check-cast v1, Ljava/lang/CharSequence;
.line 110
invoke-virtual {v0, v1}, Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
move-result-object v0
.line 112
invoke-virtual {v0}, Ljava/util/regex/Matcher;->matches()Z
move-result v0
.line 113
invoke-interface {v1}, Ljava/lang/CharSequence;->length()I
move-result v1
if-nez v1, :cond_0
goto :goto_0
:cond_0
if-eqz v0, :cond_1
:goto_0
iput-object p1, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->limit:Ljava/lang/String;
return-object p0
:cond_1
new-instance p0, Ljava/lang/StringBuilder;
const-string v0, "invalid LIMIT clauses:"
invoke-direct {p0, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p0
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-virtual {p0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object p0
invoke-direct {p1, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public final orderBy(Ljava/lang/String;)Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
.locals 1
.line 98
move-object v0, p0
check-cast v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
iput-object p1, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->orderBy:Ljava/lang/String;
return-object p0
.end method
.method public final selection(Ljava/lang/String;[Ljava/lang/Object;)Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
.locals 1
.line 64
move-object v0, p0
check-cast v0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;
iput-object p1, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->selection:Ljava/lang/String;
iput-object p2, p0, Landroidx/sqlite/db/SupportSQLiteQueryBuilder;->bindArgs:[Ljava/lang/Object;
return-object p0
.end method