* Decompile and recreate Soul Browser v1.4.85 with APK CI builds Co-authored-by: KaKi87 <KaKi87@pm.me> * Fix CI build: include bundled google.jks and remove PR trigger The apktool build failed in CI because app/unknown/.../google.jks was excluded by the *.jks gitignore rule. Whitelist app-bundled JKS files and commit the missing resource. Also remove the redundant pull_request workflow trigger. Co-authored-by: KaKi87 <KaKi87@pm.me> * Change package ID to com.github.kaki87.soulbrowser Rename the application ID so the rebuilt APK can be installed alongside the original Soul Browser from Google Play. - Update AndroidManifest package, permissions, providers, and actions - Update R class references in smali (com/github/kaki87/soulbrowser/R) - Update shortcuts.xml targetPackage - Rename app label to "Soul Rebuild" for easy identification Co-authored-by: KaKi87 <KaKi87@pm.me> * Fix install compatibility: remove split APK metadata and bundle native libs The rebuilt APK still declared requiredSplitTypes and Play Store split metadata, causing Android to reject standalone installs as incompatible. - Remove requiredSplitTypes and split-related manifest meta-data - Merge native libs from all ABI splits with uncompressed storage - Page-align before signing for extractNativeLibs=false - Add .so to apktool doNotCompress list Co-authored-by: KaKi87 <KaKi87@pm.me> * Fix install failure: use apksigner v2/v3 and bundle arm64 native libs Target SDK 36 requires APK Signature Scheme v2+, but jarsigner only produces v1 signatures, causing Android to reject the install. - Sign with apksigner (v1+v2+v3) instead of jarsigner - Add arm64-v8a native libraries from universal Soul Browser 1.4.79 - Set extractNativeLibs=true for reliable sideload installs - Commit stable debug keystore for consistent signatures across builds Co-authored-by: KaKi87 <KaKi87@pm.me> * Add committed debug keystore for consistent APK signatures Co-authored-by: KaKi87 <KaKi87@pm.me> * Fix startup crash: use original classes2.dex desugar libraries Apktool recompiles smali_classes2 into a broken classes2.dex, causing ClassNotFoundException for j$.com.android.tools.r8.a at ML Kit init. Inject the original classes2.dex (Java 8+ desugar libs) after apktool build instead of using the recompiled version. Co-authored-by: KaKi87 <KaKi87@pm.me> * Fix missing drawable resources from density split APKs The base APK is an app bundle module; density-specific drawables like seek_thumb_nor_b live in config.xhdpi.apk and were missing after rebuild, causing Resources$NotFoundException at runtime. - Merge non-9-patch resources from split APKs before apktool build - Sync public.xml IDs from R smali only when backing files exist - Add 713 density-specific resource IDs to public.xml Co-authored-by: KaKi87 <KaKi87@pm.me> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com>
1130 lines
28 KiB
Smali
1130 lines
28 KiB
Smali
.class public final Lj$/time/format/u;
|
|
.super Ljava/lang/Object;
|
|
.source "SourceFile"
|
|
|
|
|
|
# static fields
|
|
.field public static final h:Lj$/time/h;
|
|
|
|
.field public static final i:Ljava/util/Map;
|
|
|
|
|
|
# instance fields
|
|
.field public a:Lj$/time/format/u;
|
|
|
|
.field public final b:Lj$/time/format/u;
|
|
|
|
.field public final c:Ljava/util/List;
|
|
|
|
.field public final d:Z
|
|
|
|
.field public e:I
|
|
|
|
.field public f:C
|
|
|
|
.field public g:I
|
|
|
|
|
|
# direct methods
|
|
.method static constructor <clinit>()V
|
|
.locals 4
|
|
|
|
.line 158
|
|
new-instance v0, Lj$/time/h;
|
|
|
|
const/4 v1, 0x1
|
|
|
|
.line 0
|
|
invoke-direct {v0, v1}, Lj$/time/h;-><init>(I)V
|
|
|
|
.line 158
|
|
sput-object v0, Lj$/time/format/u;->h:Lj$/time/h;
|
|
|
|
.line 1999
|
|
new-instance v0, Ljava/util/HashMap;
|
|
|
|
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
|
|
|
|
sput-object v0, Lj$/time/format/u;->i:Ljava/util/Map;
|
|
|
|
const/16 v1, 0x47
|
|
|
|
.line 2002
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->ERA:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x79
|
|
|
|
.line 2003
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->YEAR_OF_ERA:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x75
|
|
|
|
.line 2004
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->YEAR:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x51
|
|
|
|
.line 2005
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/j;->a:Lj$/time/temporal/h;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x71
|
|
|
|
.line 2006
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x4d
|
|
|
|
.line 2007
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->MONTH_OF_YEAR:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x4c
|
|
|
|
.line 2008
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x44
|
|
|
|
.line 2009
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->DAY_OF_YEAR:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x64
|
|
|
|
.line 2010
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->DAY_OF_MONTH:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x46
|
|
|
|
.line 2011
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->ALIGNED_DAY_OF_WEEK_IN_MONTH:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x45
|
|
|
|
.line 2012
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->DAY_OF_WEEK:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x63
|
|
|
|
.line 2013
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x65
|
|
|
|
.line 2014
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x61
|
|
|
|
.line 2015
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->AMPM_OF_DAY:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x48
|
|
|
|
.line 2016
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->HOUR_OF_DAY:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x6b
|
|
|
|
.line 2017
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->CLOCK_HOUR_OF_DAY:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x4b
|
|
|
|
.line 2018
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->HOUR_OF_AMPM:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x68
|
|
|
|
.line 2019
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->CLOCK_HOUR_OF_AMPM:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x6d
|
|
|
|
.line 2020
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->MINUTE_OF_HOUR:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x73
|
|
|
|
.line 2021
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->SECOND_OF_MINUTE:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x53
|
|
|
|
.line 2022
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->NANO_OF_SECOND:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x41
|
|
|
|
.line 2023
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v3, Lj$/time/temporal/a;->MILLI_OF_DAY:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v3}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x6e
|
|
|
|
.line 2024
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x4e
|
|
|
|
.line 2025
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/a;->NANO_OF_DAY:Lj$/time/temporal/a;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
const/16 v1, 0x67
|
|
|
|
.line 2026
|
|
invoke-static {v1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
|
|
|
|
move-result-object v1
|
|
|
|
sget-object v2, Lj$/time/temporal/l;->a:Lj$/time/temporal/k;
|
|
|
|
invoke-virtual {v0, v1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public constructor <init>()V
|
|
.locals 1
|
|
|
|
.line 256
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
|
|
.line 166
|
|
iput-object p0, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
.line 174
|
|
new-instance v0, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
iput-object v0, p0, Lj$/time/format/u;->c:Ljava/util/List;
|
|
|
|
const/4 v0, -0x1
|
|
|
|
.line 190
|
|
iput v0, p0, Lj$/time/format/u;->g:I
|
|
|
|
const/4 v0, 0x0
|
|
|
|
.line 257
|
|
iput-object v0, p0, Lj$/time/format/u;->b:Lj$/time/format/u;
|
|
|
|
const/4 v0, 0x0
|
|
|
|
.line 258
|
|
iput-boolean v0, p0, Lj$/time/format/u;->d:Z
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public constructor <init>(Lj$/time/format/u;)V
|
|
.locals 1
|
|
|
|
.line 268
|
|
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
|
|
|
|
.line 166
|
|
iput-object p0, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
.line 174
|
|
new-instance v0, Ljava/util/ArrayList;
|
|
|
|
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
|
|
|
|
iput-object v0, p0, Lj$/time/format/u;->c:Ljava/util/List;
|
|
|
|
const/4 v0, -0x1
|
|
|
|
.line 190
|
|
iput v0, p0, Lj$/time/format/u;->g:I
|
|
|
|
.line 269
|
|
iput-object p1, p0, Lj$/time/format/u;->b:Lj$/time/format/u;
|
|
|
|
const/4 p1, 0x1
|
|
|
|
.line 270
|
|
iput-boolean p1, p0, Lj$/time/format/u;->d:Z
|
|
|
|
return-void
|
|
.end method
|
|
|
|
|
|
# virtual methods
|
|
.method public final a(Lj$/time/format/DateTimeFormatter;)V
|
|
.locals 2
|
|
|
|
.line 1469
|
|
const-string v0, "formatter"
|
|
|
|
invoke-static {p1, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 2077
|
|
iget-object p1, p1, Lj$/time/format/DateTimeFormatter;->a:Lj$/time/format/d;
|
|
|
|
.line 2343
|
|
iget-boolean v0, p1, Lj$/time/format/d;->b:Z
|
|
|
|
if-nez v0, :cond_0
|
|
|
|
goto :goto_0
|
|
|
|
.line 2346
|
|
:cond_0
|
|
new-instance v0, Lj$/time/format/d;
|
|
|
|
iget-object p1, p1, Lj$/time/format/d;->a:[Lj$/time/format/e;
|
|
|
|
const/4 v1, 0x0
|
|
|
|
invoke-direct {v0, p1, v1}, Lj$/time/format/d;-><init>([Lj$/time/format/e;Z)V
|
|
|
|
move-object p1, v0
|
|
|
|
.line 1470
|
|
:goto_0
|
|
invoke-virtual {p0, p1}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final b(Lj$/time/temporal/a;IIZ)V
|
|
.locals 1
|
|
|
|
if-ne p2, p3, :cond_0
|
|
|
|
if-nez p4, :cond_0
|
|
|
|
.line 715
|
|
new-instance v0, Lj$/time/format/f;
|
|
|
|
invoke-direct {v0, p1, p2, p3, p4}, Lj$/time/format/f;-><init>(Lj$/time/temporal/r;IIZ)V
|
|
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->j(Lj$/time/format/i;)V
|
|
|
|
return-void
|
|
|
|
.line 717
|
|
:cond_0
|
|
new-instance v0, Lj$/time/format/f;
|
|
|
|
invoke-direct {v0, p1, p2, p3, p4}, Lj$/time/format/f;-><init>(Lj$/time/temporal/r;IIZ)V
|
|
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final c(Lj$/time/format/e;)I
|
|
.locals 4
|
|
|
|
.line 2169
|
|
const-string v0, "pp"
|
|
|
|
invoke-static {p1, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 2170
|
|
iget-object v0, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
iget v1, v0, Lj$/time/format/u;->e:I
|
|
|
|
if-lez v1, :cond_1
|
|
|
|
if-eqz p1, :cond_0
|
|
|
|
.line 2172
|
|
new-instance v2, Lj$/time/format/k;
|
|
|
|
iget-char v3, v0, Lj$/time/format/u;->f:C
|
|
|
|
invoke-direct {v2, p1, v1, v3}, Lj$/time/format/k;-><init>(Lj$/time/format/e;IC)V
|
|
|
|
move-object p1, v2
|
|
|
|
:cond_0
|
|
const/4 v1, 0x0
|
|
|
|
.line 2174
|
|
iput v1, v0, Lj$/time/format/u;->e:I
|
|
|
|
.line 2175
|
|
iput-char v1, v0, Lj$/time/format/u;->f:C
|
|
|
|
.line 2177
|
|
:cond_1
|
|
iget-object v0, v0, Lj$/time/format/u;->c:Ljava/util/List;
|
|
|
|
check-cast v0, Ljava/util/ArrayList;
|
|
|
|
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
|
|
|
|
.line 2178
|
|
iget-object p1, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
const/4 v0, -0x1
|
|
|
|
iput v0, p1, Lj$/time/format/u;->g:I
|
|
|
|
.line 2179
|
|
iget-object p1, p1, Lj$/time/format/u;->c:Ljava/util/List;
|
|
|
|
check-cast p1, Ljava/util/ArrayList;
|
|
|
|
invoke-virtual {p1}, Ljava/util/ArrayList;->size()I
|
|
|
|
move-result p1
|
|
|
|
add-int/lit8 p1, p1, -0x1
|
|
|
|
return p1
|
|
.end method
|
|
|
|
.method public final d(C)V
|
|
.locals 1
|
|
|
|
.line 1432
|
|
new-instance v0, Lj$/time/format/c;
|
|
|
|
invoke-direct {v0, p1}, Lj$/time/format/c;-><init>(C)V
|
|
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final e(Ljava/lang/String;)V
|
|
.locals 2
|
|
|
|
.line 1447
|
|
const-string v0, "literal"
|
|
|
|
invoke-static {p1, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 1448
|
|
invoke-virtual {p1}, Ljava/lang/String;->isEmpty()Z
|
|
|
|
move-result v0
|
|
|
|
if-nez v0, :cond_1
|
|
|
|
.line 1449
|
|
invoke-virtual {p1}, Ljava/lang/String;->length()I
|
|
|
|
move-result v0
|
|
|
|
const/4 v1, 0x1
|
|
|
|
if-ne v0, v1, :cond_0
|
|
|
|
.line 1450
|
|
new-instance v0, Lj$/time/format/c;
|
|
|
|
const/4 v1, 0x0
|
|
|
|
invoke-virtual {p1, v1}, Ljava/lang/String;->charAt(I)C
|
|
|
|
move-result p1
|
|
|
|
invoke-direct {v0, p1}, Lj$/time/format/c;-><init>(C)V
|
|
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
return-void
|
|
|
|
.line 1452
|
|
:cond_0
|
|
new-instance v0, Lj$/time/format/h;
|
|
|
|
const/4 v1, 0x1
|
|
|
|
invoke-direct {v0, v1, p1}, Lj$/time/format/h;-><init>(ILjava/lang/Object;)V
|
|
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
:cond_1
|
|
return-void
|
|
.end method
|
|
|
|
.method public final f(Lj$/time/format/g0;)V
|
|
.locals 2
|
|
|
|
.line 1024
|
|
const-string v0, "style"
|
|
|
|
invoke-static {p1, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 1025
|
|
sget-object v0, Lj$/time/format/g0;->FULL:Lj$/time/format/g0;
|
|
|
|
if-eq p1, v0, :cond_1
|
|
|
|
sget-object v0, Lj$/time/format/g0;->SHORT:Lj$/time/format/g0;
|
|
|
|
if-ne p1, v0, :cond_0
|
|
|
|
goto :goto_0
|
|
|
|
.line 1026
|
|
:cond_0
|
|
new-instance p1, Ljava/lang/IllegalArgumentException;
|
|
|
|
const-string v0, "Style must be either full or short"
|
|
|
|
invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p1
|
|
|
|
.line 1028
|
|
:cond_1
|
|
:goto_0
|
|
new-instance v0, Lj$/time/format/h;
|
|
|
|
const/4 v1, 0x0
|
|
|
|
invoke-direct {v0, v1, p1}, Lj$/time/format/h;-><init>(ILjava/lang/Object;)V
|
|
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final g(Ljava/lang/String;Ljava/lang/String;)V
|
|
.locals 1
|
|
|
|
.line 990
|
|
new-instance v0, Lj$/time/format/j;
|
|
|
|
invoke-direct {v0, p1, p2}, Lj$/time/format/j;-><init>(Ljava/lang/String;Ljava/lang/String;)V
|
|
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final h(Lj$/time/temporal/a;Ljava/util/Map;)V
|
|
.locals 2
|
|
|
|
.line 799
|
|
const-string v0, "field"
|
|
|
|
invoke-static {p1, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 800
|
|
const-string v0, "textLookup"
|
|
|
|
invoke-static {p2, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 801
|
|
new-instance v0, Ljava/util/LinkedHashMap;
|
|
|
|
invoke-direct {v0, p2}, Ljava/util/LinkedHashMap;-><init>(Ljava/util/Map;)V
|
|
|
|
.line 802
|
|
sget-object p2, Lj$/time/format/g0;->FULL:Lj$/time/format/g0;
|
|
|
|
invoke-static {p2, v0}, Ljava/util/Collections;->singletonMap(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
|
|
|
|
move-result-object v0
|
|
|
|
.line 803
|
|
new-instance v1, Lj$/time/format/a0;
|
|
|
|
invoke-direct {v1, v0}, Lj$/time/format/a0;-><init>(Ljava/util/Map;)V
|
|
|
|
.line 804
|
|
new-instance v0, Lj$/time/format/a;
|
|
|
|
invoke-direct {v0, v1}, Lj$/time/format/a;-><init>(Lj$/time/format/a0;)V
|
|
|
|
.line 825
|
|
new-instance v1, Lj$/time/format/q;
|
|
|
|
invoke-direct {v1, p1, p2, v0}, Lj$/time/format/q;-><init>(Lj$/time/temporal/r;Lj$/time/format/g0;Lj$/time/format/b0;)V
|
|
|
|
invoke-virtual {p0, v1}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final i(Lj$/time/temporal/r;Lj$/time/format/g0;)V
|
|
.locals 2
|
|
|
|
.line 758
|
|
const-string v0, "field"
|
|
|
|
invoke-static {p1, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 759
|
|
const-string v0, "textStyle"
|
|
|
|
invoke-static {p2, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 760
|
|
new-instance v0, Lj$/time/format/q;
|
|
|
|
.line 120
|
|
sget-object v1, Lj$/time/format/b0;->c:Lj$/time/format/b0;
|
|
|
|
.line 760
|
|
invoke-direct {v0, p1, p2, v1}, Lj$/time/format/q;-><init>(Lj$/time/temporal/r;Lj$/time/format/g0;Lj$/time/format/b0;)V
|
|
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final j(Lj$/time/format/i;)V
|
|
.locals 5
|
|
|
|
.line 648
|
|
iget-object v0, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
iget v1, v0, Lj$/time/format/u;->g:I
|
|
|
|
if-ltz v1, :cond_1
|
|
|
|
.line 652
|
|
iget-object v0, v0, Lj$/time/format/u;->c:Ljava/util/List;
|
|
|
|
check-cast v0, Ljava/util/ArrayList;
|
|
|
|
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
|
|
|
|
move-result-object v0
|
|
|
|
check-cast v0, Lj$/time/format/i;
|
|
|
|
.line 653
|
|
iget v2, p1, Lj$/time/format/i;->b:I
|
|
|
|
iget v3, p1, Lj$/time/format/i;->c:I
|
|
|
|
if-ne v2, v3, :cond_0
|
|
|
|
.line 0
|
|
iget-object v2, p1, Lj$/time/format/i;->d:Lj$/time/format/f0;
|
|
|
|
.line 653
|
|
sget-object v4, Lj$/time/format/f0;->NOT_NEGATIVE:Lj$/time/format/f0;
|
|
|
|
if-ne v2, v4, :cond_0
|
|
|
|
.line 655
|
|
invoke-virtual {v0, v3}, Lj$/time/format/i;->f(I)Lj$/time/format/i;
|
|
|
|
move-result-object v0
|
|
|
|
.line 657
|
|
invoke-virtual {p1}, Lj$/time/format/i;->e()Lj$/time/format/i;
|
|
|
|
move-result-object p1
|
|
|
|
invoke-virtual {p0, p1}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
.line 659
|
|
iget-object p1, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
iput v1, p1, Lj$/time/format/u;->g:I
|
|
|
|
goto :goto_0
|
|
|
|
.line 662
|
|
:cond_0
|
|
invoke-virtual {v0}, Lj$/time/format/i;->e()Lj$/time/format/i;
|
|
|
|
move-result-object v0
|
|
|
|
.line 664
|
|
iget-object v2, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
invoke-virtual {p0, p1}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
move-result p1
|
|
|
|
iput p1, v2, Lj$/time/format/u;->g:I
|
|
|
|
.line 667
|
|
:goto_0
|
|
iget-object p1, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
iget-object p1, p1, Lj$/time/format/u;->c:Ljava/util/List;
|
|
|
|
check-cast p1, Ljava/util/ArrayList;
|
|
|
|
invoke-virtual {p1, v1, v0}, Ljava/util/ArrayList;->set(ILjava/lang/Object;)Ljava/lang/Object;
|
|
|
|
return-void
|
|
|
|
.line 670
|
|
:cond_1
|
|
invoke-virtual {p0, p1}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
move-result p1
|
|
|
|
iput p1, v0, Lj$/time/format/u;->g:I
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final k(Lj$/time/temporal/r;)V
|
|
.locals 4
|
|
|
|
.line 409
|
|
const-string v0, "field"
|
|
|
|
invoke-static {p1, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 410
|
|
new-instance v0, Lj$/time/format/i;
|
|
|
|
const/16 v1, 0x13
|
|
|
|
sget-object v2, Lj$/time/format/f0;->NORMAL:Lj$/time/format/f0;
|
|
|
|
const/4 v3, 0x1
|
|
|
|
invoke-direct {v0, p1, v3, v1, v2}, Lj$/time/format/i;-><init>(Lj$/time/temporal/r;IILj$/time/format/f0;)V
|
|
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->j(Lj$/time/format/i;)V
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final l(Lj$/time/temporal/r;I)V
|
|
.locals 2
|
|
|
|
.line 463
|
|
const-string v0, "field"
|
|
|
|
invoke-static {p1, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
const/4 v0, 0x1
|
|
|
|
if-lt p2, v0, :cond_0
|
|
|
|
const/16 v0, 0x13
|
|
|
|
if-gt p2, v0, :cond_0
|
|
|
|
.line 467
|
|
new-instance v0, Lj$/time/format/i;
|
|
|
|
sget-object v1, Lj$/time/format/f0;->NOT_NEGATIVE:Lj$/time/format/f0;
|
|
|
|
invoke-direct {v0, p1, p2, p2, v1}, Lj$/time/format/i;-><init>(Lj$/time/temporal/r;IILj$/time/format/f0;)V
|
|
|
|
.line 468
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->j(Lj$/time/format/i;)V
|
|
|
|
return-void
|
|
|
|
.line 465
|
|
:cond_0
|
|
new-instance p1, Ljava/lang/IllegalArgumentException;
|
|
|
|
new-instance v0, Ljava/lang/StringBuilder;
|
|
|
|
const-string v1, "The width must be from 1 to 19 inclusive but was "
|
|
|
|
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
|
|
|
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/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p1
|
|
.end method
|
|
|
|
.method public final m(Lj$/time/temporal/r;IILj$/time/format/f0;)V
|
|
.locals 2
|
|
|
|
if-ne p2, p3, :cond_0
|
|
|
|
.line 505
|
|
sget-object v0, Lj$/time/format/f0;->NOT_NEGATIVE:Lj$/time/format/f0;
|
|
|
|
if-ne p4, v0, :cond_0
|
|
|
|
.line 506
|
|
invoke-virtual {p0, p1, p3}, Lj$/time/format/u;->l(Lj$/time/temporal/r;I)V
|
|
|
|
return-void
|
|
|
|
.line 508
|
|
:cond_0
|
|
const-string v0, "field"
|
|
|
|
invoke-static {p1, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 509
|
|
const-string v0, "signStyle"
|
|
|
|
invoke-static {p4, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
const/4 v0, 0x1
|
|
|
|
if-lt p2, v0, :cond_3
|
|
|
|
const/16 v1, 0x13
|
|
|
|
if-gt p2, v1, :cond_3
|
|
|
|
if-lt p3, v0, :cond_2
|
|
|
|
if-gt p3, v1, :cond_2
|
|
|
|
if-lt p3, p2, :cond_1
|
|
|
|
.line 520
|
|
new-instance v0, Lj$/time/format/i;
|
|
|
|
invoke-direct {v0, p1, p2, p3, p4}, Lj$/time/format/i;-><init>(Lj$/time/temporal/r;IILj$/time/format/f0;)V
|
|
|
|
.line 521
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->j(Lj$/time/format/i;)V
|
|
|
|
return-void
|
|
|
|
.line 517
|
|
:cond_1
|
|
new-instance p1, Ljava/lang/IllegalArgumentException;
|
|
|
|
new-instance p4, Ljava/lang/StringBuilder;
|
|
|
|
const-string v0, "The maximum width must exceed or equal the minimum width but "
|
|
|
|
invoke-direct {p4, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
|
|
|
invoke-virtual {p4, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
|
|
|
|
const-string p3, " < "
|
|
|
|
invoke-virtual {p4, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {p4, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {p4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p2
|
|
|
|
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p1
|
|
|
|
.line 514
|
|
:cond_2
|
|
new-instance p1, Ljava/lang/IllegalArgumentException;
|
|
|
|
new-instance p2, Ljava/lang/StringBuilder;
|
|
|
|
const-string p4, "The maximum width must be from 1 to 19 inclusive but was "
|
|
|
|
invoke-direct {p2, p4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
|
|
|
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p2
|
|
|
|
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p1
|
|
|
|
.line 511
|
|
:cond_3
|
|
new-instance p1, Ljava/lang/IllegalArgumentException;
|
|
|
|
new-instance p3, Ljava/lang/StringBuilder;
|
|
|
|
const-string p4, "The minimum width must be from 1 to 19 inclusive but was "
|
|
|
|
invoke-direct {p3, p4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
|
|
|
|
invoke-virtual {p3, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
|
|
|
|
invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
|
|
|
|
move-result-object p2
|
|
|
|
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw p1
|
|
.end method
|
|
|
|
.method public final n()V
|
|
.locals 3
|
|
|
|
.line 2148
|
|
iget-object v0, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
iget-object v1, v0, Lj$/time/format/u;->b:Lj$/time/format/u;
|
|
|
|
if-eqz v1, :cond_1
|
|
|
|
.line 2151
|
|
iget-object v0, v0, Lj$/time/format/u;->c:Ljava/util/List;
|
|
|
|
check-cast v0, Ljava/util/ArrayList;
|
|
|
|
invoke-virtual {v0}, Ljava/util/ArrayList;->size()I
|
|
|
|
move-result v0
|
|
|
|
if-lez v0, :cond_0
|
|
|
|
.line 2152
|
|
new-instance v0, Lj$/time/format/d;
|
|
|
|
iget-object v1, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
iget-object v2, v1, Lj$/time/format/u;->c:Ljava/util/List;
|
|
|
|
iget-boolean v1, v1, Lj$/time/format/u;->d:Z
|
|
|
|
invoke-direct {v0, v2, v1}, Lj$/time/format/d;-><init>(Ljava/util/List;Z)V
|
|
|
|
.line 2153
|
|
iget-object v1, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
iget-object v1, v1, Lj$/time/format/u;->b:Lj$/time/format/u;
|
|
|
|
iput-object v1, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
.line 2154
|
|
invoke-virtual {p0, v0}, Lj$/time/format/u;->c(Lj$/time/format/e;)I
|
|
|
|
return-void
|
|
|
|
.line 2156
|
|
:cond_0
|
|
iget-object v0, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
iget-object v0, v0, Lj$/time/format/u;->b:Lj$/time/format/u;
|
|
|
|
iput-object v0, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
return-void
|
|
|
|
.line 2149
|
|
:cond_1
|
|
new-instance v0, Ljava/lang/IllegalStateException;
|
|
|
|
const-string v1, "Cannot call optionalEnd() as there was no previous call to optionalStart()"
|
|
|
|
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
|
|
|
|
throw v0
|
|
.end method
|
|
|
|
.method public final o()V
|
|
.locals 2
|
|
|
|
.line 2117
|
|
iget-object v0, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
const/4 v1, -0x1
|
|
|
|
iput v1, v0, Lj$/time/format/u;->g:I
|
|
|
|
.line 2118
|
|
new-instance v1, Lj$/time/format/u;
|
|
|
|
invoke-direct {v1, v0}, Lj$/time/format/u;-><init>(Lj$/time/format/u;)V
|
|
|
|
iput-object v1, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
return-void
|
|
.end method
|
|
|
|
.method public final p(Lj$/time/format/e0;Lj$/time/chrono/m;)Lj$/time/format/DateTimeFormatter;
|
|
.locals 1
|
|
|
|
.line 2238
|
|
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
|
|
|
|
move-result-object v0
|
|
|
|
invoke-virtual {p0, v0, p1, p2}, Lj$/time/format/u;->q(Ljava/util/Locale;Lj$/time/format/e0;Lj$/time/chrono/m;)Lj$/time/format/DateTimeFormatter;
|
|
|
|
move-result-object p1
|
|
|
|
return-object p1
|
|
.end method
|
|
|
|
.method public final q(Ljava/util/Locale;Lj$/time/format/e0;Lj$/time/chrono/m;)Lj$/time/format/DateTimeFormatter;
|
|
.locals 3
|
|
|
|
.line 2249
|
|
const-string v0, "locale"
|
|
|
|
invoke-static {p1, v0}, Lj$/util/Objects;->requireNonNull(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
|
|
|
|
.line 2250
|
|
:goto_0
|
|
iget-object v0, p0, Lj$/time/format/u;->a:Lj$/time/format/u;
|
|
|
|
iget-object v0, v0, Lj$/time/format/u;->b:Lj$/time/format/u;
|
|
|
|
if-eqz v0, :cond_0
|
|
|
|
.line 2251
|
|
invoke-virtual {p0}, Lj$/time/format/u;->n()V
|
|
|
|
goto :goto_0
|
|
|
|
.line 2253
|
|
:cond_0
|
|
new-instance v0, Lj$/time/format/d;
|
|
|
|
iget-object v1, p0, Lj$/time/format/u;->c:Ljava/util/List;
|
|
|
|
const/4 v2, 0x0
|
|
|
|
invoke-direct {v0, v1, v2}, Lj$/time/format/d;-><init>(Ljava/util/List;Z)V
|
|
|
|
.line 2254
|
|
new-instance v1, Lj$/time/format/DateTimeFormatter;
|
|
|
|
sget-object v2, Lj$/time/format/c0;->a:Lj$/time/format/c0;
|
|
|
|
invoke-direct {v1, v0, p1, p2, p3}, Lj$/time/format/DateTimeFormatter;-><init>(Lj$/time/format/d;Ljava/util/Locale;Lj$/time/format/e0;Lj$/time/chrono/m;)V
|
|
|
|
return-object v1
|
|
.end method
|