g.smali
.class public final Lcom/google/gson/g;
.super Ljava/lang/Object;
.source "SourceFile"
# instance fields
.field public a:Lcom/google/gson/e;
.field public b:Z
.field public c:Z
.field private d:Lcom/google/gson/internal/Excluder;
.field private e:Lcom/google/gson/s;
.field private final f:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/reflect/Type;",
"Lcom/google/gson/h<",
"*>;>;"
}
.end annotation
.end field
.field private final g:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/google/gson/u;",
">;"
}
.end annotation
.end field
.field private final h:Ljava/util/List;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/List<",
"Lcom/google/gson/u;",
">;"
}
.end annotation
.end field
.field private i:Ljava/lang/String;
.field private j:I
.field private k:I
.field private l:Z
.field private m:Z
.field private n:Z
.field private o:Z
.field private p:Z
# direct methods
.method public constructor <init>()V
.registers 3
.line 104
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 79
sget-object v0, Lcom/google/gson/internal/Excluder;->a:Lcom/google/gson/internal/Excluder;
iput-object v0, p0, Lcom/google/gson/g;->d:Lcom/google/gson/internal/Excluder;
.line 80
sget-object v0, Lcom/google/gson/s;->DEFAULT:Lcom/google/gson/s;
iput-object v0, p0, Lcom/google/gson/g;->e:Lcom/google/gson/s;
.line 81
sget-object v0, Lcom/google/gson/d;->IDENTITY:Lcom/google/gson/d;
iput-object v0, p0, Lcom/google/gson/g;->a:Lcom/google/gson/e;
.line 82
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lcom/google/gson/g;->f:Ljava/util/Map;
.line 84
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/google/gson/g;->g:Ljava/util/List;
.line 86
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
iput-object v0, p0, Lcom/google/gson/g;->h:Ljava/util/List;
const/4 v0, 0x0
.line 87
iput-boolean v0, p0, Lcom/google/gson/g;->b:Z
const/4 v1, 0x2
.line 89
iput v1, p0, Lcom/google/gson/g;->j:I
.line 90
iput v1, p0, Lcom/google/gson/g;->k:I
.line 91
iput-boolean v0, p0, Lcom/google/gson/g;->l:Z
.line 92
iput-boolean v0, p0, Lcom/google/gson/g;->m:Z
const/4 v1, 0x1
.line 93
iput-boolean v1, p0, Lcom/google/gson/g;->n:Z
.line 94
iput-boolean v0, p0, Lcom/google/gson/g;->c:Z
.line 95
iput-boolean v0, p0, Lcom/google/gson/g;->o:Z
.line 96
iput-boolean v0, p0, Lcom/google/gson/g;->p:Z
return-void
.end method
.method private static a(Ljava/lang/String;IILjava/util/List;)V
.registers 7
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"II",
"Ljava/util/List<",
"Lcom/google/gson/u;",
">;)V"
}
.end annotation
if-eqz p0, :cond_24
.line 611
invoke-virtual {p0}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object v0
const-string v1, ""
invoke-virtual {v1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_24
.line 612
new-instance p1, Lcom/google/gson/a;
const-class p2, Ljava/util/Date;
invoke-direct {p1, p2, p0}, Lcom/google/gson/a;-><init>(Ljava/lang/Class;Ljava/lang/String;)V
.line 613
new-instance p2, Lcom/google/gson/a;
const-class v0, Ljava/sql/Timestamp;
invoke-direct {p2, v0, p0}, Lcom/google/gson/a;-><init>(Ljava/lang/Class;Ljava/lang/String;)V
.line 614
new-instance v0, Lcom/google/gson/a;
const-class v1, Ljava/sql/Date;
invoke-direct {v0, v1, p0}, Lcom/google/gson/a;-><init>(Ljava/lang/Class;Ljava/lang/String;)V
goto :goto_41
:cond_24
const/4 p0, 0x2
if-eq p1, p0, :cond_5c
if-eq p2, p0, :cond_5c
.line 616
new-instance p0, Lcom/google/gson/a;
const-class v0, Ljava/util/Date;
invoke-direct {p0, v0, p1, p2}, Lcom/google/gson/a;-><init>(Ljava/lang/Class;II)V
.line 617
new-instance v0, Lcom/google/gson/a;
const-class v1, Ljava/sql/Timestamp;
invoke-direct {v0, v1, p1, p2}, Lcom/google/gson/a;-><init>(Ljava/lang/Class;II)V
.line 618
new-instance v1, Lcom/google/gson/a;
const-class v2, Ljava/sql/Date;
invoke-direct {v1, v2, p1, p2}, Lcom/google/gson/a;-><init>(Ljava/lang/Class;II)V
move-object p1, p0
move-object p2, v0
move-object v0, v1
.line 623
:goto_41
const-class p0, Ljava/util/Date;
invoke-static {p0, p1}, Lcom/google/gson/internal/bind/i;->a(Ljava/lang/Class;Lcom/google/gson/t;)Lcom/google/gson/u;
move-result-object p0
invoke-interface {p3, p0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 624
const-class p0, Ljava/sql/Timestamp;
invoke-static {p0, p2}, Lcom/google/gson/internal/bind/i;->a(Ljava/lang/Class;Lcom/google/gson/t;)Lcom/google/gson/u;
move-result-object p0
invoke-interface {p3, p0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 625
const-class p0, Ljava/sql/Date;
invoke-static {p0, v0}, Lcom/google/gson/internal/bind/i;->a(Ljava/lang/Class;Lcom/google/gson/t;)Lcom/google/gson/u;
move-result-object p0
invoke-interface {p3, p0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_5c
return-void
.end method
# virtual methods
.method public final a()Lcom/google/gson/f;
.registers 22
move-object/from16 v0, p0
.line 587
new-instance v1, Ljava/util/ArrayList;
move-object/from16 v18, v1
iget-object v2, v0, Lcom/google/gson/g;->g:Ljava/util/List;
invoke-interface {v2}, Ljava/util/List;->size()I
move-result v2
iget-object v3, v0, Lcom/google/gson/g;->h:Ljava/util/List;
invoke-interface {v3}, Ljava/util/List;->size()I
move-result v3
add-int/2addr v2, v3
add-int/lit8 v2, v2, 0x3
invoke-direct {v1, v2}, Ljava/util/ArrayList;-><init>(I)V
.line 588
iget-object v2, v0, Lcom/google/gson/g;->g:Ljava/util/List;
invoke-interface {v1, v2}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
.line 589
invoke-static {v1}, Ljava/util/Collections;->reverse(Ljava/util/List;)V
.line 591
new-instance v2, Ljava/util/ArrayList;
iget-object v3, v0, Lcom/google/gson/g;->h:Ljava/util/List;
invoke-direct {v2, v3}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
.line 592
invoke-static {v2}, Ljava/util/Collections;->reverse(Ljava/util/List;)V
.line 593
invoke-interface {v1, v2}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z
.line 595
iget-object v2, v0, Lcom/google/gson/g;->i:Ljava/lang/String;
iget v3, v0, Lcom/google/gson/g;->j:I
iget v4, v0, Lcom/google/gson/g;->k:I
invoke-static {v2, v3, v4, v1}, Lcom/google/gson/g;->a(Ljava/lang/String;IILjava/util/List;)V
.line 597
new-instance v19, Lcom/google/gson/f;
move-object/from16 v1, v19
iget-object v2, v0, Lcom/google/gson/g;->d:Lcom/google/gson/internal/Excluder;
iget-object v3, v0, Lcom/google/gson/g;->a:Lcom/google/gson/e;
iget-object v4, v0, Lcom/google/gson/g;->f:Ljava/util/Map;
iget-boolean v5, v0, Lcom/google/gson/g;->b:Z
iget-boolean v6, v0, Lcom/google/gson/g;->l:Z
iget-boolean v7, v0, Lcom/google/gson/g;->o:Z
iget-boolean v8, v0, Lcom/google/gson/g;->n:Z
iget-boolean v9, v0, Lcom/google/gson/g;->c:Z
iget-boolean v10, v0, Lcom/google/gson/g;->p:Z
iget-boolean v11, v0, Lcom/google/gson/g;->m:Z
iget-object v12, v0, Lcom/google/gson/g;->e:Lcom/google/gson/s;
iget-object v13, v0, Lcom/google/gson/g;->i:Ljava/lang/String;
iget v14, v0, Lcom/google/gson/g;->j:I
iget v15, v0, Lcom/google/gson/g;->k:I
move-object/from16 v20, v1
iget-object v1, v0, Lcom/google/gson/g;->g:Ljava/util/List;
move-object/from16 v16, v1
iget-object v1, v0, Lcom/google/gson/g;->h:Ljava/util/List;
move-object/from16 v17, v1
move-object/from16 v1, v20
invoke-direct/range {v1 .. v18}, Lcom/google/gson/f;-><init>(Lcom/google/gson/internal/Excluder;Lcom/google/gson/e;Ljava/util/Map;ZZZZZZZLcom/google/gson/s;Ljava/lang/String;IILjava/util/List;Ljava/util/List;Ljava/util/List;)V
return-object v19
.end method
.method public final a(Lcom/google/gson/u;)Lcom/google/gson/g;
.registers 3
.line 523
iget-object v0, p0, Lcom/google/gson/g;->g:Ljava/util/List;
invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
return-object p0
.end method
.method public final a(Ljava/lang/reflect/Type;Ljava/lang/Object;)Lcom/google/gson/g;
.registers 9
.line 497
instance-of v0, p2, Lcom/google/gson/r;
const/4 v1, 0x0
const/4 v2, 0x1
if-nez v0, :cond_15
instance-of v3, p2, Lcom/google/gson/k;
if-nez v3, :cond_15
instance-of v3, p2, Lcom/google/gson/h;
if-nez v3, :cond_15
instance-of v3, p2, Lcom/google/gson/t;
if-eqz v3, :cond_13
goto :goto_15
:cond_13
const/4 v3, 0x0
goto :goto_16
:cond_15
:goto_15
const/4 v3, 0x1
:goto_16
invoke-static {v3}, Lcom/google/gson/internal/a;->a(Z)V
.line 501
instance-of v3, p2, Lcom/google/gson/h;
if-eqz v3, :cond_25
.line 502
iget-object v3, p0, Lcom/google/gson/g;->f:Ljava/util/Map;
move-object v4, p2
check-cast v4, Lcom/google/gson/h;
invoke-interface {v3, p1, v4}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_25
if-nez v0, :cond_2b
.line 504
instance-of v0, p2, Lcom/google/gson/k;
if-eqz v0, :cond_41
.line 505
:cond_2b
invoke-static {p1}, Lcom/google/gson/b/a;->a(Ljava/lang/reflect/Type;)Lcom/google/gson/b/a;
move-result-object v0
.line 506
iget-object v3, p0, Lcom/google/gson/g;->g:Ljava/util/List;
.line 2101
iget-object v4, v0, Lcom/google/gson/b/a;->b:Ljava/lang/reflect/Type;
.line 3094
iget-object v5, v0, Lcom/google/gson/b/a;->a:Ljava/lang/Class;
if-ne v4, v5, :cond_38
const/4 v1, 0x1
.line 1107
:cond_38
new-instance v2, Lcom/google/gson/internal/bind/TreeTypeAdapter$SingleTypeFactory;
const/4 v4, 0x0
invoke-direct {v2, p2, v0, v1, v4}, Lcom/google/gson/internal/bind/TreeTypeAdapter$SingleTypeFactory;-><init>(Ljava/lang/Object;Lcom/google/gson/b/a;ZLjava/lang/Class;)V
.line 506
invoke-interface {v3, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 508
:cond_41
instance-of v0, p2, Lcom/google/gson/t;
if-eqz v0, :cond_54
.line 509
iget-object v0, p0, Lcom/google/gson/g;->g:Ljava/util/List;
invoke-static {p1}, Lcom/google/gson/b/a;->a(Ljava/lang/reflect/Type;)Lcom/google/gson/b/a;
move-result-object p1
check-cast p2, Lcom/google/gson/t;
invoke-static {p1, p2}, Lcom/google/gson/internal/bind/i;->a(Lcom/google/gson/b/a;Lcom/google/gson/t;)Lcom/google/gson/u;
move-result-object p1
invoke-interface {v0, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_54
return-object p0
.end method