j.smali
.class public final Lcom/google/gson/j;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public a:Lcom/google/gson/internal/Excluder;
.field public b:Lcom/google/gson/y;
.field public c:Lcom/google/gson/c;
.field public final d:Ljava/util/HashMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/reflect/Type;",
"Lcom/google/gson/k<",
"*>;>;"
}
.end annotation
.end field
.field public final e:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/google/gson/c0;",
">;"
}
.end annotation
.end field
.field public final f:Ljava/util/ArrayList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/google/gson/c0;",
">;"
}
.end annotation
.end field
.field public g:Z
.field public h:Ljava/lang/String;
.field public i:I
.field public j:I
.field public k:Z
.field public l:Z
.field public m:Z
.field public n:Z
.field public o:Z
.field public p:Z
.field public q:Lcom/google/gson/a0;
.field public r:Lcom/google/gson/a0;
# direct methods
.method public constructor <init>()V
.registers 3
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 2
sget-object v0, Lcom/google/gson/internal/Excluder;->f:Lcom/google/gson/internal/Excluder;
iput-object v0, p0, Lcom/google/gson/j;->a:Lcom/google/gson/internal/Excluder;
.line 3
sget-object v0, Lcom/google/gson/y;->DEFAULT:Lcom/google/gson/y;
iput-object v0, p0, Lcom/google/gson/j;->b:Lcom/google/gson/y;
.line 4
sget-object v0, Lcom/google/gson/b;->IDENTITY:Lcom/google/gson/b;
iput-object v0, p0, Lcom/google/gson/j;->c:Lcom/google/gson/c;
.line 5
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lcom/google/gson/j;->d:Ljava/util/HashMap;
.line 6
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/google/gson/j;->e:Ljava/util/ArrayList;
.line 7
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/google/gson/j;->f:Ljava/util/ArrayList;
const/4 v0, 0x0
.line 8
iput-boolean v0, p0, Lcom/google/gson/j;->g:Z
const/4 v1, 0x2
.line 9
iput v1, p0, Lcom/google/gson/j;->i:I
.line 10
iput v1, p0, Lcom/google/gson/j;->j:I
.line 11
iput-boolean v0, p0, Lcom/google/gson/j;->k:Z
.line 12
iput-boolean v0, p0, Lcom/google/gson/j;->l:Z
const/4 v1, 0x1
.line 13
iput-boolean v1, p0, Lcom/google/gson/j;->m:Z
.line 14
iput-boolean v0, p0, Lcom/google/gson/j;->n:Z
.line 15
iput-boolean v0, p0, Lcom/google/gson/j;->o:Z
.line 16
iput-boolean v0, p0, Lcom/google/gson/j;->p:Z
.line 17
sget-object v0, Lcom/google/gson/z;->DOUBLE:Lcom/google/gson/z;
iput-object v0, p0, Lcom/google/gson/j;->q:Lcom/google/gson/a0;
.line 18
sget-object v0, Lcom/google/gson/z;->LAZILY_PARSED_NUMBER:Lcom/google/gson/z;
iput-object v0, p0, Lcom/google/gson/j;->r:Lcom/google/gson/a0;
return-void
.end method
.method public constructor <init>(Lcom/google/gson/i;)V
.registers 7
.line 19
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 20
sget-object v0, Lcom/google/gson/internal/Excluder;->f:Lcom/google/gson/internal/Excluder;
iput-object v0, p0, Lcom/google/gson/j;->a:Lcom/google/gson/internal/Excluder;
.line 21
sget-object v0, Lcom/google/gson/y;->DEFAULT:Lcom/google/gson/y;
iput-object v0, p0, Lcom/google/gson/j;->b:Lcom/google/gson/y;
.line 22
sget-object v0, Lcom/google/gson/b;->IDENTITY:Lcom/google/gson/b;
iput-object v0, p0, Lcom/google/gson/j;->c:Lcom/google/gson/c;
.line 23
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lcom/google/gson/j;->d:Ljava/util/HashMap;
.line 24
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V
iput-object v1, p0, Lcom/google/gson/j;->e:Ljava/util/ArrayList;
.line 25
new-instance v2, Ljava/util/ArrayList;
invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V
iput-object v2, p0, Lcom/google/gson/j;->f:Ljava/util/ArrayList;
const/4 v3, 0x0
.line 26
iput-boolean v3, p0, Lcom/google/gson/j;->g:Z
const/4 v4, 0x2
.line 27
iput v4, p0, Lcom/google/gson/j;->i:I
.line 28
iput v4, p0, Lcom/google/gson/j;->j:I
.line 29
iput-boolean v3, p0, Lcom/google/gson/j;->k:Z
.line 30
iput-boolean v3, p0, Lcom/google/gson/j;->l:Z
const/4 v4, 0x1
.line 31
iput-boolean v4, p0, Lcom/google/gson/j;->m:Z
.line 32
iput-boolean v3, p0, Lcom/google/gson/j;->n:Z
.line 33
iput-boolean v3, p0, Lcom/google/gson/j;->o:Z
.line 34
iput-boolean v3, p0, Lcom/google/gson/j;->p:Z
.line 35
sget-object v3, Lcom/google/gson/z;->DOUBLE:Lcom/google/gson/z;
iput-object v3, p0, Lcom/google/gson/j;->q:Lcom/google/gson/a0;
.line 36
sget-object v3, Lcom/google/gson/z;->LAZILY_PARSED_NUMBER:Lcom/google/gson/z;
iput-object v3, p0, Lcom/google/gson/j;->r:Lcom/google/gson/a0;
.line 37
iget-object v3, p1, Lcom/google/gson/i;->f:Lcom/google/gson/internal/Excluder;
iput-object v3, p0, Lcom/google/gson/j;->a:Lcom/google/gson/internal/Excluder;
.line 38
iget-object v3, p1, Lcom/google/gson/i;->g:Lcom/google/gson/c;
iput-object v3, p0, Lcom/google/gson/j;->c:Lcom/google/gson/c;
.line 39
iget-object v3, p1, Lcom/google/gson/i;->h:Ljava/util/Map;
invoke-virtual {v0, v3}, Ljava/util/HashMap;->putAll(Ljava/util/Map;)V
.line 40
iget-boolean v0, p1, Lcom/google/gson/i;->i:Z
iput-boolean v0, p0, Lcom/google/gson/j;->g:Z
.line 41
iget-boolean v0, p1, Lcom/google/gson/i;->j:Z
iput-boolean v0, p0, Lcom/google/gson/j;->k:Z
.line 42
iget-boolean v0, p1, Lcom/google/gson/i;->k:Z
iput-boolean v0, p0, Lcom/google/gson/j;->o:Z
.line 43
iget-boolean v0, p1, Lcom/google/gson/i;->l:Z
iput-boolean v0, p0, Lcom/google/gson/j;->m:Z
.line 44
iget-boolean v0, p1, Lcom/google/gson/i;->m:Z
iput-boolean v0, p0, Lcom/google/gson/j;->n:Z
.line 45
iget-boolean v0, p1, Lcom/google/gson/i;->n:Z
iput-boolean v0, p0, Lcom/google/gson/j;->p:Z
.line 46
iget-boolean v0, p1, Lcom/google/gson/i;->o:Z
iput-boolean v0, p0, Lcom/google/gson/j;->l:Z
.line 47
iget-object v0, p1, Lcom/google/gson/i;->s:Lcom/google/gson/y;
iput-object v0, p0, Lcom/google/gson/j;->b:Lcom/google/gson/y;
.line 48
iget-object v0, p1, Lcom/google/gson/i;->p:Ljava/lang/String;
iput-object v0, p0, Lcom/google/gson/j;->h:Ljava/lang/String;
.line 49
iget v0, p1, Lcom/google/gson/i;->q:I
iput v0, p0, Lcom/google/gson/j;->i:I
.line 50
iget v0, p1, Lcom/google/gson/i;->r:I
iput v0, p0, Lcom/google/gson/j;->j:I
.line 51
iget-object v0, p1, Lcom/google/gson/i;->t:Ljava/util/List;
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->addAll(Ljava/util/Collection;)Z
.line 52
iget-object v0, p1, Lcom/google/gson/i;->u:Ljava/util/List;
invoke-virtual {v2, v0}, Ljava/util/ArrayList;->addAll(Ljava/util/Collection;)Z
.line 53
iget-object v0, p1, Lcom/google/gson/i;->v:Lcom/google/gson/a0;
iput-object v0, p0, Lcom/google/gson/j;->q:Lcom/google/gson/a0;
.line 54
iget-object p1, p1, Lcom/google/gson/i;->w:Lcom/google/gson/a0;
iput-object p1, p0, Lcom/google/gson/j;->r:Lcom/google/gson/a0;
return-void
.end method
# virtual methods
.method public final a()Lcom/google/gson/i;
.registers 25
move-object/from16 v0, p0
.line 1
new-instance v15, Ljava/util/ArrayList;
iget-object v1, v0, Lcom/google/gson/j;->e:Ljava/util/ArrayList;
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result v1
iget-object v2, v0, Lcom/google/gson/j;->f:Ljava/util/ArrayList;
invoke-virtual {v2}, Ljava/util/ArrayList;->size()I
move-result v2
add-int/2addr v2, v1
add-int/lit8 v2, v2, 0x3
invoke-direct {v15, v2}, Ljava/util/ArrayList;-><init>(I)V
.line 2
iget-object v1, v0, Lcom/google/gson/j;->e:Ljava/util/ArrayList;
invoke-virtual {v15, v1}, Ljava/util/ArrayList;->addAll(Ljava/util/Collection;)Z
.line 3
invoke-static {v15}, Ljava/util/Collections;->reverse(Ljava/util/List;)V
.line 4
new-instance v1, Ljava/util/ArrayList;
iget-object v2, v0, Lcom/google/gson/j;->f:Ljava/util/ArrayList;
invoke-direct {v1, v2}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
.line 5
invoke-static {v1}, Ljava/util/Collections;->reverse(Ljava/util/List;)V
.line 6
invoke-virtual {v15, v1}, Ljava/util/ArrayList;->addAll(Ljava/util/Collection;)Z
.line 7
iget-object v1, v0, Lcom/google/gson/j;->h:Ljava/lang/String;
iget v2, v0, Lcom/google/gson/j;->i:I
iget v3, v0, Lcom/google/gson/j;->j:I
.line 8
sget-boolean v4, Lcom/google/gson/internal/sql/a;->a:Z
const/4 v5, 0x0
if-eqz v1, :cond_55
.line 9
invoke-virtual {v1}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v6
invoke-virtual {v6}, Ljava/lang/String;->isEmpty()Z
move-result v6
if-nez v6, :cond_55
.line 10
sget-object v2, Lcom/google/gson/internal/bind/a$b;->b:Lcom/google/gson/internal/bind/a$b$a;
invoke-virtual {v2, v1}, Lcom/google/gson/internal/bind/a$b;->b(Ljava/lang/String;)Lcom/google/gson/c0;
move-result-object v2
if-eqz v4, :cond_75
.line 11
sget-object v3, Lcom/google/gson/internal/sql/a;->c:Lcom/google/gson/internal/sql/a$b;
invoke-virtual {v3, v1}, Lcom/google/gson/internal/bind/a$b;->b(Ljava/lang/String;)Lcom/google/gson/c0;
move-result-object v5
.line 12
sget-object v3, Lcom/google/gson/internal/sql/a;->b:Lcom/google/gson/internal/sql/a$a;
invoke-virtual {v3, v1}, Lcom/google/gson/internal/bind/a$b;->b(Ljava/lang/String;)Lcom/google/gson/c0;
move-result-object v1
goto :goto_76
:cond_55
const/4 v1, 0x2
if-eq v2, v1, :cond_81
if-eq v3, v1, :cond_81
.line 13
sget-object v1, Lcom/google/gson/internal/bind/a$b;->b:Lcom/google/gson/internal/bind/a$b$a;
invoke-virtual {v1, v2, v3}, Lcom/google/gson/internal/bind/a$b;->a(II)Lcom/google/gson/c0;
move-result-object v1
if-eqz v4, :cond_74
.line 14
sget-object v5, Lcom/google/gson/internal/sql/a;->c:Lcom/google/gson/internal/sql/a$b;
invoke-virtual {v5, v2, v3}, Lcom/google/gson/internal/bind/a$b;->a(II)Lcom/google/gson/c0;
move-result-object v5
.line 15
sget-object v6, Lcom/google/gson/internal/sql/a;->b:Lcom/google/gson/internal/sql/a$a;
invoke-virtual {v6, v2, v3}, Lcom/google/gson/internal/bind/a$b;->a(II)Lcom/google/gson/c0;
move-result-object v2
move-object/from16 v23, v2
move-object v2, v1
move-object/from16 v1, v23
goto :goto_76
:cond_74
move-object v2, v1
:cond_75
move-object v1, v5
.line 16
:goto_76
invoke-virtual {v15, v2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
if-eqz v4, :cond_81
.line 17
invoke-virtual {v15, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 18
invoke-virtual {v15, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 19
:cond_81
new-instance v21, Lcom/google/gson/i;
move-object/from16 v1, v21
iget-object v2, v0, Lcom/google/gson/j;->a:Lcom/google/gson/internal/Excluder;
iget-object v3, v0, Lcom/google/gson/j;->c:Lcom/google/gson/c;
iget-object v4, v0, Lcom/google/gson/j;->d:Ljava/util/HashMap;
iget-boolean v5, v0, Lcom/google/gson/j;->g:Z
iget-boolean v6, v0, Lcom/google/gson/j;->k:Z
iget-boolean v7, v0, Lcom/google/gson/j;->o:Z
iget-boolean v8, v0, Lcom/google/gson/j;->m:Z
iget-boolean v9, v0, Lcom/google/gson/j;->n:Z
iget-boolean v10, v0, Lcom/google/gson/j;->p:Z
iget-boolean v11, v0, Lcom/google/gson/j;->l:Z
iget-object v12, v0, Lcom/google/gson/j;->b:Lcom/google/gson/y;
iget-object v13, v0, Lcom/google/gson/j;->h:Ljava/lang/String;
iget v14, v0, Lcom/google/gson/j;->i:I
move-object/from16 v16, v15
iget v15, v0, Lcom/google/gson/j;->j:I
move-object/from16 v18, v16
move-object/from16 v22, v1
iget-object v1, v0, Lcom/google/gson/j;->e:Ljava/util/ArrayList;
move-object/from16 v16, v1
iget-object v1, v0, Lcom/google/gson/j;->f:Ljava/util/ArrayList;
move-object/from16 v17, v1
iget-object v1, v0, Lcom/google/gson/j;->q:Lcom/google/gson/a0;
move-object/from16 v19, v1
iget-object v1, v0, Lcom/google/gson/j;->r:Lcom/google/gson/a0;
move-object/from16 v20, v1
move-object/from16 v1, v22
invoke-direct/range {v1 .. v20}, Lcom/google/gson/i;-><init>(Lcom/google/gson/internal/Excluder;Lcom/google/gson/c;Ljava/util/Map;ZZZZZZZLcom/google/gson/y;Ljava/lang/String;IILjava/util/List;Ljava/util/List;Ljava/util/List;Lcom/google/gson/a0;Lcom/google/gson/a0;)V
return-object v21
.end method
.method public final varargs b([I)Lcom/google/gson/j;
.registers 3
iget-object v0, p0, Lcom/google/gson/j;->a:Lcom/google/gson/internal/Excluder;
invoke-virtual {v0, p1}, Lcom/google/gson/internal/Excluder;->f([I)Lcom/google/gson/internal/Excluder;
move-result-object p1
iput-object p1, p0, Lcom/google/gson/j;->a:Lcom/google/gson/internal/Excluder;
return-object p0
.end method
.method public final c(Ljava/lang/reflect/Type;Ljava/lang/Object;)Lcom/google/gson/j;
.registers 6
.line 1
instance-of v0, p2, Lcom/google/gson/w;
if-nez v0, :cond_13
instance-of v1, p2, Lcom/google/gson/n;
if-nez v1, :cond_13
instance-of v1, p2, Lcom/google/gson/k;
if-nez v1, :cond_13
instance-of v1, p2, Lcom/google/gson/b0;
if-eqz v1, :cond_11
goto :goto_13
:cond_11
const/4 v1, 0x0
goto :goto_14
:cond_13
:goto_13
const/4 v1, 0x1
:goto_14
invoke-static {v1}, Landroidx/appcompat/c;->q(Z)V
.line 2
instance-of v1, p2, Lcom/google/gson/k;
if-eqz v1, :cond_23
.line 3
iget-object v1, p0, Lcom/google/gson/j;->d:Ljava/util/HashMap;
move-object v2, p2
check-cast v2, Lcom/google/gson/k;
invoke-virtual {v1, p1, v2}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_23
if-nez v0, :cond_29
.line 4
instance-of v0, p2, Lcom/google/gson/n;
if-eqz v0, :cond_36
.line 5
:cond_29
invoke-static {p1}, Lcom/google/gson/reflect/a;->get(Ljava/lang/reflect/Type;)Lcom/google/gson/reflect/a;
move-result-object v0
.line 6
iget-object v1, p0, Lcom/google/gson/j;->e:Ljava/util/ArrayList;
invoke-static {v0, p2}, Lcom/google/gson/internal/bind/TreeTypeAdapter;->a(Lcom/google/gson/reflect/a;Ljava/lang/Object;)Lcom/google/gson/c0;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
.line 7
:cond_36
instance-of v0, p2, Lcom/google/gson/b0;
if-eqz v0, :cond_49
.line 8
iget-object v0, p0, Lcom/google/gson/j;->e:Ljava/util/ArrayList;
invoke-static {p1}, Lcom/google/gson/reflect/a;->get(Ljava/lang/reflect/Type;)Lcom/google/gson/reflect/a;
move-result-object p1
check-cast p2, Lcom/google/gson/b0;
invoke-static {p1, p2}, Lcom/google/gson/internal/bind/TypeAdapters;->a(Lcom/google/gson/reflect/a;Lcom/google/gson/b0;)Lcom/google/gson/c0;
move-result-object p1
invoke-virtual {v0, p1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
:cond_49
return-object p0
.end method