ExtMapTypeAdapterFactory$a.smali
.class final Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;
.super Lcom/google/gson/t;
.source "SourceFile"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x10
name = "a"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<K:",
"Ljava/lang/Object;",
"V:",
"Ljava/lang/Object;",
">",
"Lcom/google/gson/t<",
"Ljava/util/Map<",
"TK;+TV;>;>;"
}
.end annotation
# instance fields
.field final synthetic a:Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory;
.field private final b:Lcom/google/gson/t;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/gson/t<",
"TK;>;"
}
.end annotation
.end field
.field private final c:Lcom/google/gson/t;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/gson/t<",
"TV;>;"
}
.end annotation
.end field
.field private final d:Lcom/google/gson/internal/h;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/google/gson/internal/h<",
"+",
"Ljava/util/Map<",
"TK;TV;>;>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory;Lcom/google/gson/f;Ljava/lang/reflect/Type;Lcom/google/gson/t;Ljava/lang/reflect/Type;Lcom/google/gson/t;Lcom/google/gson/internal/h;)V
.registers 9
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/google/gson/f;",
"Ljava/lang/reflect/Type;",
"Lcom/google/gson/t<",
"TK;>;",
"Ljava/lang/reflect/Type;",
"Lcom/google/gson/t<",
"TV;>;",
"Lcom/google/gson/internal/h<",
"+",
"Ljava/util/Map<",
"TK;TV;>;>;)V"
}
.end annotation
const-string v0, "constructor"
invoke-static {p7, v0}, Lkotlin/f/b/o;->b(Ljava/lang/Object;Ljava/lang/String;)V
.line 60
iput-object p1, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->a:Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory;
.line 67
invoke-direct {p0}, Lcom/google/gson/t;-><init>()V
.line 73
new-instance p1, Lcom/google/gson/internal/bind/h;
invoke-direct {p1, p2, p4, p3}, Lcom/google/gson/internal/bind/h;-><init>(Lcom/google/gson/f;Lcom/google/gson/t;Ljava/lang/reflect/Type;)V
check-cast p1, Lcom/google/gson/t;
iput-object p1, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->b:Lcom/google/gson/t;
.line 78
new-instance p1, Lcom/google/gson/internal/bind/h;
invoke-direct {p1, p2, p6, p5}, Lcom/google/gson/internal/bind/h;-><init>(Lcom/google/gson/f;Lcom/google/gson/t;Ljava/lang/reflect/Type;)V
check-cast p1, Lcom/google/gson/t;
iput-object p1, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->c:Lcom/google/gson/t;
.line 83
iput-object p7, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->d:Lcom/google/gson/internal/h;
return-void
.end method
# virtual methods
.method public final synthetic a(Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object;
.registers 6
const-string v0, "reader"
.line 60
invoke-static {p1, v0}, Lkotlin/f/b/o;->b(Ljava/lang/Object;Ljava/lang/String;)V
.line 1088
invoke-virtual {p1}, Lcom/google/gson/stream/JsonReader;->peek()Lcom/google/gson/stream/JsonToken;
move-result-object v0
.line 1089
sget-object v1, Lcom/google/gson/stream/JsonToken;->NULL:Lcom/google/gson/stream/JsonToken;
if-ne v0, v1, :cond_12
.line 1090
invoke-virtual {p1}, Lcom/google/gson/stream/JsonReader;->nextNull()V
const/4 p1, 0x0
return-object p1
.line 1093
:cond_12
iget-object v1, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->d:Lcom/google/gson/internal/h;
invoke-interface {v1}, Lcom/google/gson/internal/h;->a()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/util/Map;
.line 1094
sget-object v2, Lcom/google/gson/stream/JsonToken;->BEGIN_ARRAY:Lcom/google/gson/stream/JsonToken;
const-string v3, "duplicate key: "
if-ne v0, v2, :cond_5b
.line 1095
invoke-virtual {p1}, Lcom/google/gson/stream/JsonReader;->beginArray()V
.line 1096
:goto_23
invoke-virtual {p1}, Lcom/google/gson/stream/JsonReader;->hasNext()Z
move-result v0
if-eqz v0, :cond_57
.line 1097
invoke-virtual {p1}, Lcom/google/gson/stream/JsonReader;->beginArray()V
.line 1098
iget-object v0, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->b:Lcom/google/gson/t;
invoke-virtual {v0, p1}, Lcom/google/gson/t;->a(Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object;
move-result-object v0
.line 1099
iget-object v2, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->c:Lcom/google/gson/t;
invoke-virtual {v2, p1}, Lcom/google/gson/t;->a(Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object;
move-result-object v2
if-eqz v0, :cond_53
if-eqz v2, :cond_53
.line 1101
invoke-interface {v1, v0, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
if-nez v2, :cond_43
goto :goto_53
.line 1103
:cond_43
new-instance p1, Lcom/google/gson/JsonSyntaxException;
invoke-static {v0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
invoke-virtual {v3, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Lcom/google/gson/JsonSyntaxException;-><init>(Ljava/lang/String;)V
check-cast p1, Ljava/lang/Throwable;
throw p1
.line 1106
:cond_53
:goto_53
invoke-virtual {p1}, Lcom/google/gson/stream/JsonReader;->endArray()V
goto :goto_23
.line 1108
:cond_57
invoke-virtual {p1}, Lcom/google/gson/stream/JsonReader;->endArray()V
goto :goto_93
.line 1110
:cond_5b
invoke-virtual {p1}, Lcom/google/gson/stream/JsonReader;->beginObject()V
.line 1111
:cond_5e
:goto_5e
invoke-virtual {p1}, Lcom/google/gson/stream/JsonReader;->hasNext()Z
move-result v0
if-eqz v0, :cond_90
.line 1112
sget-object v0, Lcom/google/gson/internal/e;->INSTANCE:Lcom/google/gson/internal/e;
invoke-virtual {v0, p1}, Lcom/google/gson/internal/e;->promoteNameToValue(Lcom/google/gson/stream/JsonReader;)V
.line 1113
iget-object v0, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->b:Lcom/google/gson/t;
invoke-virtual {v0, p1}, Lcom/google/gson/t;->a(Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object;
move-result-object v0
.line 1114
iget-object v2, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->c:Lcom/google/gson/t;
invoke-virtual {v2, p1}, Lcom/google/gson/t;->a(Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object;
move-result-object v2
if-eqz v0, :cond_5e
if-eqz v2, :cond_5e
.line 1116
invoke-interface {v1, v0, v2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
if-nez v2, :cond_80
goto :goto_5e
.line 1118
:cond_80
new-instance p1, Lcom/google/gson/JsonSyntaxException;
invoke-static {v0}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v0
invoke-virtual {v3, v0}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Lcom/google/gson/JsonSyntaxException;-><init>(Ljava/lang/String;)V
check-cast p1, Ljava/lang/Throwable;
throw p1
.line 1122
:cond_90
invoke-virtual {p1}, Lcom/google/gson/stream/JsonReader;->endObject()V
:goto_93
return-object v1
.end method
.method public final synthetic a(Lcom/google/gson/stream/JsonWriter;Ljava/lang/Object;)V
.registers 10
.line 60
check-cast p2, Ljava/util/Map;
const-string v0, "out"
invoke-static {p1, v0}, Lkotlin/f/b/o;->b(Ljava/lang/Object;Ljava/lang/String;)V
if-nez p2, :cond_d
.line 1130
invoke-virtual {p1}, Lcom/google/gson/stream/JsonWriter;->nullValue()Lcom/google/gson/stream/JsonWriter;
return-void
.line 1133
:cond_d
iget-object v0, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->a:Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory;
invoke-static {v0}, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory;->a(Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory;)Z
move-result v0
if-nez v0, :cond_45
.line 1134
invoke-virtual {p1}, Lcom/google/gson/stream/JsonWriter;->beginObject()Lcom/google/gson/stream/JsonWriter;
.line 1135
invoke-interface {p2}, Ljava/util/Map;->entrySet()Ljava/util/Set;
move-result-object p2
invoke-interface {p2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p2
:goto_20
invoke-interface {p2}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_41
invoke-interface {p2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/Map$Entry;
invoke-interface {v0}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v1
invoke-interface {v0}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v0
.line 1136
invoke-static {v1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v1
invoke-virtual {p1, v1}, Lcom/google/gson/stream/JsonWriter;->name(Ljava/lang/String;)Lcom/google/gson/stream/JsonWriter;
.line 1137
iget-object v1, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->c:Lcom/google/gson/t;
invoke-virtual {v1, p1, v0}, Lcom/google/gson/t;->a(Lcom/google/gson/stream/JsonWriter;Ljava/lang/Object;)V
goto :goto_20
.line 1139
:cond_41
invoke-virtual {p1}, Lcom/google/gson/stream/JsonWriter;->endObject()Lcom/google/gson/stream/JsonWriter;
return-void
.line 1143
:cond_45
new-instance v0, Ljava/util/ArrayList;
invoke-interface {p2}, Ljava/util/Map;->size()I
move-result v1
invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(I)V
check-cast v0, Ljava/util/List;
.line 1144
new-instance v1, Ljava/util/ArrayList;
invoke-interface {p2}, Ljava/util/Map;->size()I
move-result v2
invoke-direct {v1, v2}, Ljava/util/ArrayList;-><init>(I)V
check-cast v1, Ljava/util/List;
.line 1145
invoke-interface {p2}, Ljava/util/Map;->entrySet()Ljava/util/Set;
move-result-object p2
invoke-interface {p2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p2
const/4 v2, 0x0
const/4 v3, 0x0
:goto_65
invoke-interface {p2}, Ljava/util/Iterator;->hasNext()Z
move-result v4
if-eqz v4, :cond_98
invoke-interface {p2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v4
check-cast v4, Ljava/util/Map$Entry;
invoke-interface {v4}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v5
invoke-interface {v4}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v4
.line 1146
iget-object v6, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->b:Lcom/google/gson/t;
invoke-virtual {v6, v5}, Lcom/google/gson/t;->a(Ljava/lang/Object;)Lcom/google/gson/l;
move-result-object v5
const-string v6, "keyElement"
.line 1147
invoke-static {v5, v6}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
invoke-interface {v0, v5}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 1148
invoke-interface {v1, v4}, Ljava/util/List;->add(Ljava/lang/Object;)Z
.line 2047
instance-of v4, v5, Lcom/google/gson/i;
if-nez v4, :cond_95
.line 2056
instance-of v4, v5, Lcom/google/gson/n;
if-eqz v4, :cond_93
goto :goto_95
:cond_93
const/4 v4, 0x0
goto :goto_96
:cond_95
:goto_95
const/4 v4, 0x1
:goto_96
or-int/2addr v3, v4
goto :goto_65
:cond_98
if-eqz v3, :cond_c2
.line 1153
invoke-virtual {p1}, Lcom/google/gson/stream/JsonWriter;->beginArray()Lcom/google/gson/stream/JsonWriter;
.line 1155
invoke-interface {v0}, Ljava/util/List;->size()I
move-result p2
:goto_a1
if-ge v2, p2, :cond_be
.line 1157
invoke-virtual {p1}, Lcom/google/gson/stream/JsonWriter;->beginArray()Lcom/google/gson/stream/JsonWriter;
.line 1158
invoke-interface {v0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/google/gson/l;
invoke-static {v3, p1}, Lcom/google/gson/internal/k;->a(Lcom/google/gson/l;Lcom/google/gson/stream/JsonWriter;)V
.line 1159
iget-object v3, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->c:Lcom/google/gson/t;
invoke-interface {v1, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v4
invoke-virtual {v3, p1, v4}, Lcom/google/gson/t;->a(Lcom/google/gson/stream/JsonWriter;Ljava/lang/Object;)V
.line 1160
invoke-virtual {p1}, Lcom/google/gson/stream/JsonWriter;->endArray()Lcom/google/gson/stream/JsonWriter;
add-int/lit8 v2, v2, 0x1
goto :goto_a1
.line 1163
:cond_be
invoke-virtual {p1}, Lcom/google/gson/stream/JsonWriter;->endArray()Lcom/google/gson/stream/JsonWriter;
return-void
.line 1165
:cond_c2
invoke-virtual {p1}, Lcom/google/gson/stream/JsonWriter;->beginObject()Lcom/google/gson/stream/JsonWriter;
.line 1167
invoke-interface {v0}, Ljava/util/List;->size()I
move-result p2
:goto_c9
if-ge v2, p2, :cond_136
.line 1169
invoke-interface {v0, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v3
check-cast v3, Lcom/google/gson/l;
.line 3065
instance-of v4, v3, Lcom/google/gson/p;
if-eqz v4, :cond_119
.line 2181
invoke-virtual {v3}, Lcom/google/gson/l;->i()Lcom/google/gson/p;
move-result-object v3
const-string v4, "primitive"
.line 2182
invoke-static {v3, v4}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
.line 3150
iget-object v4, v3, Lcom/google/gson/p;->a:Ljava/lang/Object;
instance-of v4, v4, Ljava/lang/Number;
if-eqz v4, :cond_ed
.line 2183
invoke-virtual {v3}, Lcom/google/gson/p;->a()Ljava/lang/Number;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/Number;->toString()Ljava/lang/String;
move-result-object v3
goto :goto_11f
.line 4116
:cond_ed
iget-object v4, v3, Lcom/google/gson/p;->a:Ljava/lang/Object;
instance-of v4, v4, Ljava/lang/Boolean;
if-eqz v4, :cond_101
.line 2187
invoke-virtual {v3}, Lcom/google/gson/p;->f()Z
move-result v3
invoke-static {v3}, Ljava/lang/Boolean;->toString(Z)Ljava/lang/String;
move-result-object v3
const-string v4, "java.lang.Boolean.toString(primitive.asBoolean)"
invoke-static {v3, v4}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
goto :goto_11f
.line 4170
:cond_101
iget-object v4, v3, Lcom/google/gson/p;->a:Ljava/lang/Object;
instance-of v4, v4, Ljava/lang/String;
if-eqz v4, :cond_111
.line 2191
invoke-virtual {v3}, Lcom/google/gson/p;->b()Ljava/lang/String;
move-result-object v3
const-string v4, "primitive.asString"
invoke-static {v3, v4}, Lkotlin/f/b/o;->a(Ljava/lang/Object;Ljava/lang/String;)V
goto :goto_11f
.line 2194
:cond_111
new-instance p1, Ljava/lang/AssertionError;
invoke-direct {p1}, Ljava/lang/AssertionError;-><init>()V
check-cast p1, Ljava/lang/Throwable;
throw p1
.line 5075
:cond_119
instance-of v3, v3, Lcom/google/gson/m;
if-eqz v3, :cond_12e
const-string v3, "null"
.line 1170
:goto_11f
invoke-virtual {p1, v3}, Lcom/google/gson/stream/JsonWriter;->name(Ljava/lang/String;)Lcom/google/gson/stream/JsonWriter;
.line 1171
iget-object v3, p0, Lcom/google/gson/internal/bind/ExtMapTypeAdapterFactory$a;->c:Lcom/google/gson/t;
invoke-interface {v1, v2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v4
invoke-virtual {v3, p1, v4}, Lcom/google/gson/t;->a(Lcom/google/gson/stream/JsonWriter;Ljava/lang/Object;)V
add-int/lit8 v2, v2, 0x1
goto :goto_c9
.line 2200
:cond_12e
new-instance p1, Ljava/lang/AssertionError;
invoke-direct {p1}, Ljava/lang/AssertionError;-><init>()V
check-cast p1, Ljava/lang/Throwable;
throw p1
.line 1174
:cond_136
invoke-virtual {p1}, Lcom/google/gson/stream/JsonWriter;->endObject()Lcom/google/gson/stream/JsonWriter;
return-void
.end method