a.smali
.class public Lcom/google/gson/stream/a;
.super Ljava/lang/Object;
.source "JsonReader.java"
# interfaces
.implements Ljava/io/Closeable;
# static fields
.field private static final bhM:[C
# instance fields
.field private bgg:I
.field private bgh:[Ljava/lang/String;
.field private bgi:[I
.field public bhN:Z
.field private bhO:I
.field private bhP:I
.field bhQ:I
.field private bhR:J
.field private bhS:I
.field private bhT:Ljava/lang/String;
.field private bhU:[I
.field private final buffer:[C
.field private final in:Ljava/io/Reader;
.field private limit:I
.field private pos:I
# direct methods
.method static constructor <clinit>()V
.registers 1
.prologue
.line 192
const-string v0, ")]}\'\n"
invoke-virtual {v0}, Ljava/lang/String;->toCharArray()[C
move-result-object v0
sput-object v0, Lcom/google/gson/stream/a;->bhM:[C
.line 1594
new-instance v0, Lcom/google/gson/stream/a$1;
invoke-direct {v0}, Lcom/google/gson/stream/a$1;-><init>()V
sput-object v0, Lcom/google/gson/internal/d;->bfJ:Lcom/google/gson/internal/d;
.line 1616
return-void
.end method
.method public constructor <init>(Ljava/io/Reader;)V
.registers 6
.prologue
const/16 v3, 0x20
const/4 v1, 0x0
.line 289
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 230
iput-boolean v1, p0, Lcom/google/gson/stream/a;->bhN:Z
.line 238
const/16 v0, 0x400
new-array v0, v0, [C
iput-object v0, p0, Lcom/google/gson/stream/a;->buffer:[C
.line 239
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 240
iput v1, p0, Lcom/google/gson/stream/a;->limit:I
.line 242
iput v1, p0, Lcom/google/gson/stream/a;->bhO:I
.line 243
iput v1, p0, Lcom/google/gson/stream/a;->bhP:I
.line 245
iput v1, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 269
new-array v0, v3, [I
iput-object v0, p0, Lcom/google/gson/stream/a;->bhU:[I
.line 270
iput v1, p0, Lcom/google/gson/stream/a;->bgg:I
.line 272
iget-object v0, p0, Lcom/google/gson/stream/a;->bhU:[I
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/gson/stream/a;->bgg:I
const/4 v2, 0x6
aput v2, v0, v1
.line 283
new-array v0, v3, [Ljava/lang/String;
iput-object v0, p0, Lcom/google/gson/stream/a;->bgh:[Ljava/lang/String;
.line 284
new-array v0, v3, [I
iput-object v0, p0, Lcom/google/gson/stream/a;->bgi:[I
.line 290
if-nez p1, :cond_3b
.line 291
new-instance v0, Ljava/lang/NullPointerException;
const-string v1, "in == null"
invoke-direct {v0, v1}, Ljava/lang/NullPointerException;-><init>(Ljava/lang/String;)V
throw v0
.line 293
:cond_3b
iput-object p1, p0, Lcom/google/gson/stream/a;->in:Ljava/io/Reader;
.line 294
return-void
.end method
.method private Ao()I
.registers 9
.prologue
const/4 v3, 0x0
.line 599
iget-object v0, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
aget-char v0, v0, v1
.line 603
const/16 v1, 0x74
if-eq v0, v1, :cond_f
const/16 v1, 0x54
if-ne v0, v1, :cond_2c
.line 604
:cond_f
const-string v2, "true"
.line 605
const-string v1, "TRUE"
.line 606
const/4 v0, 0x5
.line 620
:goto_14
invoke-virtual {v2}, Ljava/lang/String;->length()I
move-result v5
.line 621
const/4 v4, 0x1
:goto_19
if-ge v4, v5, :cond_62
.line 622
iget v6, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v6, v4
iget v7, p0, Lcom/google/gson/stream/a;->limit:I
if-lt v6, v7, :cond_4a
add-int/lit8 v6, v4, 0x1
invoke-direct {p0, v6}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v6
if-nez v6, :cond_4a
move v0, v3
.line 638
:goto_2b
return v0
.line 607
:cond_2c
const/16 v1, 0x66
if-eq v0, v1, :cond_34
const/16 v1, 0x46
if-ne v0, v1, :cond_3a
.line 608
:cond_34
const-string v2, "false"
.line 609
const-string v1, "FALSE"
.line 610
const/4 v0, 0x6
goto :goto_14
.line 611
:cond_3a
const/16 v1, 0x6e
if-eq v0, v1, :cond_42
const/16 v1, 0x4e
if-ne v0, v1, :cond_48
.line 612
:cond_42
const-string v2, "null"
.line 613
const-string v1, "NULL"
.line 614
const/4 v0, 0x7
goto :goto_14
:cond_48
move v0, v3
.line 616
goto :goto_2b
.line 625
:cond_4a
iget-object v6, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v7, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v7, v4
aget-char v6, v6, v7
.line 626
invoke-virtual {v2, v4}, Ljava/lang/String;->charAt(I)C
move-result v7
if-eq v6, v7, :cond_5f
invoke-virtual {v1, v4}, Ljava/lang/String;->charAt(I)C
move-result v7
if-eq v6, v7, :cond_5f
move v0, v3
.line 627
goto :goto_2b
.line 621
:cond_5f
add-int/lit8 v4, v4, 0x1
goto :goto_19
.line 631
:cond_62
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v1, v5
iget v2, p0, Lcom/google/gson/stream/a;->limit:I
if-lt v1, v2, :cond_71
add-int/lit8 v1, v5, 0x1
invoke-direct {p0, v1}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v1
if-eqz v1, :cond_80
:cond_71
iget-object v1, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v2, v5
aget-char v1, v1, v2
.line 632
invoke-direct {p0, v1}, Lcom/google/gson/stream/a;->h(C)Z
move-result v1
if-eqz v1, :cond_80
move v0, v3
.line 633
goto :goto_2b
.line 637
:cond_80
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v1, v5
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 638
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto :goto_2b
.end method
.method private Ap()I
.registers 16
.prologue
.line 643
iget-object v11, p0, Lcom/google/gson/stream/a;->buffer:[C
.line 644
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
.line 645
iget v1, p0, Lcom/google/gson/stream/a;->limit:I
.line 647
const-wide/16 v6, 0x0
.line 648
const/4 v5, 0x0
.line 649
const/4 v4, 0x1
.line 650
const/4 v3, 0x0
.line 652
const/4 v0, 0x0
move v10, v0
move v0, v1
move v1, v2
.line 656
:goto_f
add-int v2, v1, v10
if-ne v2, v0, :cond_25
.line 657
const/16 v0, 0x400
if-ne v10, v0, :cond_19
.line 660
const/4 v0, 0x0
.line 740
:goto_18
return v0
.line 662
:cond_19
add-int/lit8 v0, v10, 0x1
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v0
if-eqz v0, :cond_c1
.line 665
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 666
iget v0, p0, Lcom/google/gson/stream/a;->limit:I
.line 669
:cond_25
add-int v2, v1, v10
aget-char v2, v11, v2
.line 670
sparse-switch v2, :sswitch_data_100
.line 705
const/16 v8, 0x30
if-lt v2, v8, :cond_34
const/16 v8, 0x39
if-le v2, v8, :cond_71
.line 706
:cond_34
invoke-direct {p0, v2}, Lcom/google/gson/stream/a;->h(C)Z
move-result v0
if-eqz v0, :cond_c1
.line 709
const/4 v0, 0x0
goto :goto_18
.line 672
:sswitch_3c
if-nez v3, :cond_4a
.line 673
const/4 v3, 0x1
.line 674
const/4 v2, 0x1
move v14, v4
move v4, v3
move v3, v14
.line 655
:goto_43
add-int/lit8 v5, v10, 0x1
move v10, v5
move v5, v4
move v4, v3
move v3, v2
goto :goto_f
.line 676
:cond_4a
const/4 v2, 0x5
if-ne v3, v2, :cond_51
.line 677
const/4 v2, 0x6
move v3, v4
move v4, v5
.line 678
goto :goto_43
.line 680
:cond_51
const/4 v0, 0x0
goto :goto_18
.line 683
:sswitch_53
const/4 v2, 0x5
if-ne v3, v2, :cond_5a
.line 684
const/4 v2, 0x6
move v3, v4
move v4, v5
.line 685
goto :goto_43
.line 687
:cond_5a
const/4 v0, 0x0
goto :goto_18
.line 691
:sswitch_5c
const/4 v2, 0x2
if-eq v3, v2, :cond_62
const/4 v2, 0x4
if-ne v3, v2, :cond_66
.line 692
:cond_62
const/4 v2, 0x5
move v3, v4
move v4, v5
.line 693
goto :goto_43
.line 695
:cond_66
const/4 v0, 0x0
goto :goto_18
.line 698
:sswitch_68
const/4 v2, 0x2
if-ne v3, v2, :cond_6f
.line 699
const/4 v2, 0x3
move v3, v4
move v4, v5
.line 700
goto :goto_43
.line 702
:cond_6f
const/4 v0, 0x0
goto :goto_18
.line 711
:cond_71
const/4 v8, 0x1
if-eq v3, v8, :cond_76
if-nez v3, :cond_7e
.line 712
:cond_76
add-int/lit8 v2, v2, -0x30
neg-int v2, v2
int-to-long v6, v2
.line 713
const/4 v2, 0x2
move v3, v4
move v4, v5
goto :goto_43
.line 714
:cond_7e
const/4 v8, 0x2
if-ne v3, v8, :cond_b0
.line 715
const-wide/16 v8, 0x0
cmp-long v8, v6, v8
if-nez v8, :cond_89
.line 716
const/4 v0, 0x0
goto :goto_18
.line 718
:cond_89
const-wide/16 v8, 0xa
mul-long/2addr v8, v6
add-int/lit8 v2, v2, -0x30
int-to-long v12, v2
sub-long/2addr v8, v12
.line 719
const-wide v12, -0xcccccccccccccccL
cmp-long v2, v6, v12
if-gtz v2, :cond_a6
const-wide v12, -0xcccccccccccccccL
cmp-long v2, v6, v12
if-nez v2, :cond_ae
cmp-long v2, v8, v6
if-gez v2, :cond_ae
:cond_a6
const/4 v2, 0x1
:goto_a7
and-int/2addr v2, v4
move v4, v5
move-wide v6, v8
move v14, v3
move v3, v2
move v2, v14
.line 722
goto :goto_43
.line 719
:cond_ae
const/4 v2, 0x0
goto :goto_a7
.line 722
:cond_b0
const/4 v2, 0x3
if-ne v3, v2, :cond_b7
.line 723
const/4 v2, 0x4
move v3, v4
move v4, v5
goto :goto_43
.line 724
:cond_b7
const/4 v2, 0x5
if-eq v3, v2, :cond_bd
const/4 v2, 0x6
if-ne v3, v2, :cond_fb
.line 725
:cond_bd
const/4 v2, 0x7
move v3, v4
move v4, v5
goto :goto_43
.line 731
:cond_c1
const/4 v0, 0x2
if-ne v3, v0, :cond_e7
if-eqz v4, :cond_e7
const-wide/high16 v0, -0x8000000000000000L
cmp-long v0, v6, v0
if-nez v0, :cond_ce
if-eqz v5, :cond_e7
:cond_ce
const-wide/16 v0, 0x0
cmp-long v0, v6, v0
if-nez v0, :cond_d6
if-nez v5, :cond_e7
.line 732
:cond_d6
if-eqz v5, :cond_e5
:goto_d8
iput-wide v6, p0, Lcom/google/gson/stream/a;->bhR:J
.line 733
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v0, v10
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 734
const/16 v0, 0xf
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto/16 :goto_18
.line 732
:cond_e5
neg-long v6, v6
goto :goto_d8
.line 735
:cond_e7
const/4 v0, 0x2
if-eq v3, v0, :cond_f0
const/4 v0, 0x4
if-eq v3, v0, :cond_f0
const/4 v0, 0x7
if-ne v3, v0, :cond_f8
.line 737
:cond_f0
iput v10, p0, Lcom/google/gson/stream/a;->bhS:I
.line 738
const/16 v0, 0x10
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto/16 :goto_18
.line 740
:cond_f8
const/4 v0, 0x0
goto/16 :goto_18
:cond_fb
move v2, v3
move v3, v4
move v4, v5
goto/16 :goto_43
.line 670
:sswitch_data_100
.sparse-switch
0x2b -> :sswitch_53
0x2d -> :sswitch_3c
0x2e -> :sswitch_68
0x45 -> :sswitch_5c
0x65 -> :sswitch_5c
.end sparse-switch
.end method
.method private Aq()Ljava/lang/String;
.registers 6
.prologue
const/4 v2, 0x0
.line 1041
const/4 v0, 0x0
move v1, v2
.line 1046
:goto_3
iget v3, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v3, v1
iget v4, p0, Lcom/google/gson/stream/a;->limit:I
if-ge v3, v4, :cond_2b
.line 1047
iget-object v3, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v4, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v4, v1
aget-char v3, v3, v4
sparse-switch v3, :sswitch_data_6a
.line 1046
add-int/lit8 v1, v1, 0x1
goto :goto_3
.line 1053
:sswitch_17
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 1090
:cond_1a
:goto_1a
:sswitch_1a
if-nez v0, :cond_5a
new-instance v0, Ljava/lang/String;
iget-object v2, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v3, p0, Lcom/google/gson/stream/a;->pos:I
invoke-direct {v0, v2, v3, v1}, Ljava/lang/String;-><init>([CII)V
.line 1091
:goto_25
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v1, v2
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1092
return-object v0
.line 1070
:cond_2b
const/16 v3, 0x400
if-ge v1, v3, :cond_38
.line 1071
add-int/lit8 v3, v1, 0x1
invoke-direct {p0, v3}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v3
if-eqz v3, :cond_1a
goto :goto_3
.line 1079
:cond_38
if-nez v0, :cond_45
.line 1080
new-instance v0, Ljava/lang/StringBuilder;
const/16 v3, 0x10
invoke-static {v1, v3}, Ljava/lang/Math;->max(II)I
move-result v3
invoke-direct {v0, v3}, Ljava/lang/StringBuilder;-><init>(I)V
.line 1082
:cond_45
iget-object v3, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v4, p0, Lcom/google/gson/stream/a;->pos:I
invoke-virtual {v0, v3, v4, v1}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
.line 1083
iget v3, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v1, v3
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1085
const/4 v1, 0x1
invoke-direct {p0, v1}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v1
if-nez v1, :cond_67
move v1, v2
goto :goto_1a
.line 1090
:cond_5a
iget-object v2, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v3, p0, Lcom/google/gson/stream/a;->pos:I
invoke-virtual {v0, v2, v3, v1}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
goto :goto_25
:cond_67
move v1, v2
goto :goto_3
.line 1047
nop
:sswitch_data_6a
.sparse-switch
0x9 -> :sswitch_1a
0xa -> :sswitch_1a
0xc -> :sswitch_1a
0xd -> :sswitch_1a
0x20 -> :sswitch_1a
0x23 -> :sswitch_17
0x2c -> :sswitch_1a
0x2f -> :sswitch_17
0x3a -> :sswitch_1a
0x3b -> :sswitch_17
0x3d -> :sswitch_17
0x5b -> :sswitch_1a
0x5c -> :sswitch_17
0x5d -> :sswitch_1a
0x7b -> :sswitch_1a
0x7d -> :sswitch_1a
.end sparse-switch
.end method
.method private Ar()V
.registers 2
.prologue
.line 1408
iget-boolean v0, p0, Lcom/google/gson/stream/a;->bhN:Z
if-nez v0, :cond_b
.line 1409
const-string v0, "Use JsonReader.setLenient(true) to accept malformed JSON"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 1411
:cond_b
return-void
.end method
.method private As()V
.registers 4
.prologue
.line 1419
:cond_0
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
iget v1, p0, Lcom/google/gson/stream/a;->limit:I
if-lt v0, v1, :cond_d
const/4 v0, 0x1
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v0
if-eqz v0, :cond_25
.line 1420
:cond_d
iget-object v0, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/gson/stream/a;->pos:I
aget-char v0, v0, v1
.line 1421
const/16 v1, 0xa
if-ne v0, v1, :cond_26
.line 1422
iget v0, p0, Lcom/google/gson/stream/a;->bhO:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/gson/stream/a;->bhO:I
.line 1423
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
iput v0, p0, Lcom/google/gson/stream/a;->bhP:I
.line 1429
:cond_25
:goto_25
return-void
.line 1425
:cond_26
const/16 v1, 0xd
if-ne v0, v1, :cond_0
goto :goto_25
.end method
.method private At()C
.registers 8
.prologue
const/4 v5, 0x4
.line 1504
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
iget v1, p0, Lcom/google/gson/stream/a;->limit:I
if-ne v0, v1, :cond_15
const/4 v0, 0x1
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v0
if-nez v0, :cond_15
.line 1505
const-string v0, "Unterminated escape sequence"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 1508
:cond_15
iget-object v0, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/gson/stream/a;->pos:I
aget-char v0, v0, v1
.line 1509
sparse-switch v0, :sswitch_data_bc
.line 1559
const-string v0, "Invalid escape sequence"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 1511
:sswitch_29
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, 0x4
iget v1, p0, Lcom/google/gson/stream/a;->limit:I
if-le v0, v1, :cond_3e
invoke-direct {p0, v5}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v0
if-nez v0, :cond_3e
.line 1512
const-string v0, "Unterminated escape sequence"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 1515
:cond_3e
const/4 v1, 0x0
.line 1516
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v2, v0, 0x4
move v6, v0
move v0, v1
move v1, v6
:goto_46
if-ge v1, v2, :cond_9a
.line 1517
iget-object v3, p0, Lcom/google/gson/stream/a;->buffer:[C
aget-char v3, v3, v1
.line 1518
shl-int/lit8 v0, v0, 0x4
int-to-char v0, v0
.line 1519
const/16 v4, 0x30
if-lt v3, v4, :cond_5e
const/16 v4, 0x39
if-gt v3, v4, :cond_5e
.line 1520
add-int/lit8 v3, v3, -0x30
add-int/2addr v0, v3
int-to-char v0, v0
.line 1516
:goto_5b
add-int/lit8 v1, v1, 0x1
goto :goto_46
.line 1521
:cond_5e
const/16 v4, 0x61
if-lt v3, v4, :cond_6d
const/16 v4, 0x66
if-gt v3, v4, :cond_6d
.line 1522
add-int/lit8 v3, v3, -0x61
add-int/lit8 v3, v3, 0xa
add-int/2addr v0, v3
int-to-char v0, v0
goto :goto_5b
.line 1523
:cond_6d
const/16 v4, 0x41
if-lt v3, v4, :cond_7c
const/16 v4, 0x46
if-gt v3, v4, :cond_7c
.line 1524
add-int/lit8 v3, v3, -0x41
add-int/lit8 v3, v3, 0xa
add-int/2addr v0, v3
int-to-char v0, v0
goto :goto_5b
.line 1526
:cond_7c
new-instance v0, Ljava/lang/NumberFormatException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "\\u"
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
new-instance v2, Ljava/lang/String;
iget-object v3, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v4, p0, Lcom/google/gson/stream/a;->pos:I
invoke-direct {v2, v3, v4, v5}, Ljava/lang/String;-><init>([CII)V
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/NumberFormatException;-><init>(Ljava/lang/String;)V
throw v0
.line 1529
:cond_9a
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v1, v1, 0x4
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1556
:goto_a0
:sswitch_a0
return v0
.line 1533
:sswitch_a1
const/16 v0, 0x9
goto :goto_a0
.line 1536
:sswitch_a4
const/16 v0, 0x8
goto :goto_a0
.line 1539
:sswitch_a7
const/16 v0, 0xa
goto :goto_a0
.line 1542
:sswitch_aa
const/16 v0, 0xd
goto :goto_a0
.line 1545
:sswitch_ad
const/16 v0, 0xc
goto :goto_a0
.line 1548
:sswitch_b0
iget v1, p0, Lcom/google/gson/stream/a;->bhO:I
add-int/lit8 v1, v1, 0x1
iput v1, p0, Lcom/google/gson/stream/a;->bhO:I
.line 1549
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
iput v1, p0, Lcom/google/gson/stream/a;->bhP:I
goto :goto_a0
.line 1509
nop
:sswitch_data_bc
.sparse-switch
0xa -> :sswitch_b0
0x22 -> :sswitch_a0
0x27 -> :sswitch_a0
0x2f -> :sswitch_a0
0x5c -> :sswitch_a0
0x62 -> :sswitch_a4
0x66 -> :sswitch_ad
0x6e -> :sswitch_a7
0x72 -> :sswitch_aa
0x74 -> :sswitch_a1
0x75 -> :sswitch_29
.end sparse-switch
.end method
.method private aV(Z)I
.registers 11
.prologue
const/16 v8, 0xa
const/4 v3, 0x1
const/4 v2, 0x0
.line 1327
iget-object v5, p0, Lcom/google/gson/stream/a;->buffer:[C
.line 1328
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1329
iget v0, p0, Lcom/google/gson/stream/a;->limit:I
.line 1331
:goto_a
if-ne v1, v0, :cond_18
.line 1332
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1333
invoke-direct {p0, v3}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v0
if-eqz v0, :cond_de
.line 1336
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1337
iget v0, p0, Lcom/google/gson/stream/a;->limit:I
.line 1340
:cond_18
add-int/lit8 v4, v1, 0x1
aget-char v1, v5, v1
.line 1341
if-ne v1, v8, :cond_28
.line 1342
iget v1, p0, Lcom/google/gson/stream/a;->bhO:I
add-int/lit8 v1, v1, 0x1
iput v1, p0, Lcom/google/gson/stream/a;->bhO:I
.line 1343
iput v4, p0, Lcom/google/gson/stream/a;->bhP:I
move v1, v4
.line 1344
goto :goto_a
.line 1345
:cond_28
const/16 v6, 0x20
if-eq v1, v6, :cond_fc
const/16 v6, 0xd
if-eq v1, v6, :cond_fc
const/16 v6, 0x9
if-eq v1, v6, :cond_fc
.line 1349
const/16 v6, 0x2f
if-ne v1, v6, :cond_c7
.line 1350
iput v4, p0, Lcom/google/gson/stream/a;->pos:I
.line 1351
if-ne v4, v0, :cond_51
.line 1352
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 1353
const/4 v0, 0x2
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v0
.line 1354
iget v4, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v4, v4, 0x1
iput v4, p0, Lcom/google/gson/stream/a;->pos:I
.line 1355
if-nez v0, :cond_51
move v0, v1
.line 1403
:goto_50
return v0
.line 1360
:cond_51
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 1361
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
aget-char v0, v5, v0
.line 1362
sparse-switch v0, :sswitch_data_100
move v0, v1
.line 1382
goto :goto_50
.line 1365
:sswitch_5d
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 1366
const-string v1, "*/"
.line 3435
invoke-virtual {v1}, Ljava/lang/String;->length()I
move-result v4
.line 3437
:goto_69
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v0, v4
iget v6, p0, Lcom/google/gson/stream/a;->limit:I
if-le v0, v6, :cond_76
invoke-direct {p0, v4}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v0
if-eqz v0, :cond_ae
.line 3438
:cond_76
iget-object v0, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v6, p0, Lcom/google/gson/stream/a;->pos:I
aget-char v0, v0, v6
if-ne v0, v8, :cond_91
.line 3439
iget v0, p0, Lcom/google/gson/stream/a;->bhO:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/gson/stream/a;->bhO:I
.line 3440
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/gson/stream/a;->bhP:I
.line 3437
:cond_8a
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
goto :goto_69
:cond_91
move v0, v2
.line 3443
:goto_92
if-ge v0, v4, :cond_a4
.line 3444
iget-object v6, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v7, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v7, v0
aget-char v6, v6, v7
invoke-virtual {v1, v0}, Ljava/lang/String;->charAt(I)C
move-result v7
if-ne v6, v7, :cond_8a
.line 3443
add-int/lit8 v0, v0, 0x1
goto :goto_92
:cond_a4
move v0, v3
.line 1366
:goto_a5
if-nez v0, :cond_b0
.line 1367
const-string v0, "Unterminated comment"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
:cond_ae
move v0, v2
.line 3450
goto :goto_a5
.line 1369
:cond_b0
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v1, v0, 0x2
.line 1370
iget v0, p0, Lcom/google/gson/stream/a;->limit:I
goto/16 :goto_a
.line 1375
:sswitch_b8
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 1376
invoke-direct {p0}, Lcom/google/gson/stream/a;->As()V
.line 1377
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1378
iget v0, p0, Lcom/google/gson/stream/a;->limit:I
goto/16 :goto_a
.line 1384
:cond_c7
const/16 v0, 0x23
if-ne v1, v0, :cond_d9
.line 1385
iput v4, p0, Lcom/google/gson/stream/a;->pos:I
.line 1391
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 1392
invoke-direct {p0}, Lcom/google/gson/stream/a;->As()V
.line 1393
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1394
iget v0, p0, Lcom/google/gson/stream/a;->limit:I
goto/16 :goto_a
.line 1396
:cond_d9
iput v4, p0, Lcom/google/gson/stream/a;->pos:I
move v0, v1
.line 1397
goto/16 :goto_50
.line 1400
:cond_de
if-eqz p1, :cond_f9
.line 1401
new-instance v0, Ljava/io/EOFException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "End of input"
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/io/EOFException;-><init>(Ljava/lang/String;)V
throw v0
.line 1403
:cond_f9
const/4 v0, -0x1
goto/16 :goto_50
:cond_fc
move v1, v4
goto/16 :goto_a
.line 1362
nop
:sswitch_data_100
.sparse-switch
0x2a -> :sswitch_5d
0x2f -> :sswitch_b8
.end sparse-switch
.end method
.method private dl(I)Z
.registers 7
.prologue
const/4 v0, 0x0
.line 1284
iget-object v1, p0, Lcom/google/gson/stream/a;->buffer:[C
.line 1285
iget v2, p0, Lcom/google/gson/stream/a;->bhP:I
iget v3, p0, Lcom/google/gson/stream/a;->pos:I
sub-int/2addr v2, v3
iput v2, p0, Lcom/google/gson/stream/a;->bhP:I
.line 1286
iget v2, p0, Lcom/google/gson/stream/a;->limit:I
iget v3, p0, Lcom/google/gson/stream/a;->pos:I
if-eq v2, v3, :cond_5b
.line 1287
iget v2, p0, Lcom/google/gson/stream/a;->limit:I
iget v3, p0, Lcom/google/gson/stream/a;->pos:I
sub-int/2addr v2, v3
iput v2, p0, Lcom/google/gson/stream/a;->limit:I
.line 1288
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
iget v3, p0, Lcom/google/gson/stream/a;->limit:I
invoke-static {v1, v2, v1, v0, v3}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 1293
:goto_1e
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 1295
:cond_20
iget-object v2, p0, Lcom/google/gson/stream/a;->in:Ljava/io/Reader;
iget v3, p0, Lcom/google/gson/stream/a;->limit:I
iget v4, p0, Lcom/google/gson/stream/a;->limit:I
rsub-int v4, v4, 0x400
invoke-virtual {v2, v1, v3, v4}, Ljava/io/Reader;->read([CII)I
move-result v2
const/4 v3, -0x1
if-eq v2, v3, :cond_5a
.line 1296
iget v3, p0, Lcom/google/gson/stream/a;->limit:I
add-int/2addr v2, v3
iput v2, p0, Lcom/google/gson/stream/a;->limit:I
.line 1299
iget v2, p0, Lcom/google/gson/stream/a;->bhO:I
if-nez v2, :cond_55
iget v2, p0, Lcom/google/gson/stream/a;->bhP:I
if-nez v2, :cond_55
iget v2, p0, Lcom/google/gson/stream/a;->limit:I
if-lez v2, :cond_55
aget-char v2, v1, v0
const v3, 0xfeff
if-ne v2, v3, :cond_55
.line 1300
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v2, v2, 0x1
iput v2, p0, Lcom/google/gson/stream/a;->pos:I
.line 1301
iget v2, p0, Lcom/google/gson/stream/a;->bhP:I
add-int/lit8 v2, v2, 0x1
iput v2, p0, Lcom/google/gson/stream/a;->bhP:I
.line 1302
add-int/lit8 p1, p1, 0x1
.line 1305
:cond_55
iget v2, p0, Lcom/google/gson/stream/a;->limit:I
if-lt v2, p1, :cond_20
.line 1306
const/4 v0, 0x1
.line 1309
:cond_5a
return v0
.line 1290
:cond_5b
iput v0, p0, Lcom/google/gson/stream/a;->limit:I
goto :goto_1e
.end method
.method private fp(Ljava/lang/String;)Ljava/io/IOException;
.registers 5
.prologue
.line 1568
new-instance v0, Lcom/google/gson/stream/MalformedJsonException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Lcom/google/gson/stream/MalformedJsonException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method private h(C)Z
.registers 3
.prologue
.line 745
sparse-switch p1, :sswitch_data_a
.line 765
const/4 v0, 0x1
:goto_4
return v0
.line 751
:sswitch_5
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 763
:sswitch_8
const/4 v0, 0x0
goto :goto_4
.line 745
:sswitch_data_a
.sparse-switch
0x9 -> :sswitch_8
0xa -> :sswitch_8
0xc -> :sswitch_8
0xd -> :sswitch_8
0x20 -> :sswitch_8
0x23 -> :sswitch_5
0x2c -> :sswitch_8
0x2f -> :sswitch_5
0x3a -> :sswitch_8
0x3b -> :sswitch_5
0x3d -> :sswitch_5
0x5b -> :sswitch_8
0x5c -> :sswitch_5
0x5d -> :sswitch_8
0x7b -> :sswitch_8
0x7d -> :sswitch_8
.end sparse-switch
.end method
.method private i(C)Ljava/lang/String;
.registers 10
.prologue
const/16 v7, 0x10
.line 987
iget-object v4, p0, Lcom/google/gson/stream/a;->buffer:[C
.line 988
const/4 v0, 0x0
.line 990
:cond_5
:goto_5
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
.line 991
iget v5, p0, Lcom/google/gson/stream/a;->limit:I
move v1, v2
.line 994
:goto_a
if-ge v1, v5, :cond_5a
.line 995
add-int/lit8 v3, v1, 0x1
aget-char v1, v4, v1
.line 997
if-ne v1, p1, :cond_28
.line 998
iput v3, p0, Lcom/google/gson/stream/a;->pos:I
.line 999
sub-int v1, v3, v2
add-int/lit8 v1, v1, -0x1
.line 1000
if-nez v0, :cond_20
.line 1001
new-instance v0, Ljava/lang/String;
invoke-direct {v0, v4, v2, v1}, Ljava/lang/String;-><init>([CII)V
.line 1004
:goto_1f
return-object v0
.line 1003
:cond_20
invoke-virtual {v0, v4, v2, v1}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
.line 1004
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
goto :goto_1f
.line 1006
:cond_28
const/16 v6, 0x5c
if-ne v1, v6, :cond_4c
.line 1007
iput v3, p0, Lcom/google/gson/stream/a;->pos:I
.line 1008
sub-int v1, v3, v2
add-int/lit8 v1, v1, -0x1
.line 1009
if-nez v0, :cond_41
.line 1010
add-int/lit8 v0, v1, 0x1
shl-int/lit8 v3, v0, 0x1
.line 1011
new-instance v0, Ljava/lang/StringBuilder;
invoke-static {v3, v7}, Ljava/lang/Math;->max(II)I
move-result v3
invoke-direct {v0, v3}, Ljava/lang/StringBuilder;-><init>(I)V
.line 1013
:cond_41
invoke-virtual {v0, v4, v2, v1}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
.line 1014
invoke-direct {p0}, Lcom/google/gson/stream/a;->At()C
move-result v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_5
.line 1018
:cond_4c
const/16 v6, 0xa
if-ne v1, v6, :cond_58
.line 1019
iget v1, p0, Lcom/google/gson/stream/a;->bhO:I
add-int/lit8 v1, v1, 0x1
iput v1, p0, Lcom/google/gson/stream/a;->bhO:I
.line 1020
iput v3, p0, Lcom/google/gson/stream/a;->bhP:I
:cond_58
move v1, v3
.line 1022
goto :goto_a
.line 1024
:cond_5a
if-nez v0, :cond_69
.line 1025
sub-int v0, v1, v2
shl-int/lit8 v3, v0, 0x1
.line 1026
new-instance v0, Ljava/lang/StringBuilder;
invoke-static {v3, v7}, Ljava/lang/Math;->max(II)I
move-result v3
invoke-direct {v0, v3}, Ljava/lang/StringBuilder;-><init>(I)V
.line 1028
:cond_69
sub-int v3, v1, v2
invoke-virtual {v0, v4, v2, v3}, Ljava/lang/StringBuilder;->append([CII)Ljava/lang/StringBuilder;
.line 1029
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1030
const/4 v1, 0x1
invoke-direct {p0, v1}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v1
if-nez v1, :cond_5
.line 1031
const-string v0, "Unterminated string"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.end method
.method private j(C)V
.registers 7
.prologue
.line 1097
iget-object v2, p0, Lcom/google/gson/stream/a;->buffer:[C
.line 1099
:cond_2
:goto_2
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 1100
iget v3, p0, Lcom/google/gson/stream/a;->limit:I
.line 1102
:goto_6
if-ge v0, v3, :cond_29
.line 1103
add-int/lit8 v1, v0, 0x1
aget-char v0, v2, v0
.line 1104
if-ne v0, p1, :cond_11
.line 1105
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1106
return-void
.line 1107
:cond_11
const/16 v4, 0x5c
if-ne v0, v4, :cond_1b
.line 1108
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 1109
invoke-direct {p0}, Lcom/google/gson/stream/a;->At()C
goto :goto_2
.line 1112
:cond_1b
const/16 v4, 0xa
if-ne v0, v4, :cond_27
.line 1113
iget v0, p0, Lcom/google/gson/stream/a;->bhO:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/gson/stream/a;->bhO:I
.line 1114
iput v1, p0, Lcom/google/gson/stream/a;->bhP:I
:cond_27
move v0, v1
.line 1116
goto :goto_6
.line 1117
:cond_29
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 1118
const/4 v0, 0x1
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v0
if-nez v0, :cond_2
.line 1119
const-string v0, "Unterminated string"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.end method
.method private push(I)V
.registers 8
.prologue
const/4 v5, 0x0
.line 1264
iget v0, p0, Lcom/google/gson/stream/a;->bgg:I
iget-object v1, p0, Lcom/google/gson/stream/a;->bhU:[I
array-length v1, v1
if-ne v0, v1, :cond_35
.line 1265
iget v0, p0, Lcom/google/gson/stream/a;->bgg:I
shl-int/lit8 v0, v0, 0x1
new-array v0, v0, [I
.line 1266
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
shl-int/lit8 v1, v1, 0x1
new-array v1, v1, [I
.line 1267
iget v2, p0, Lcom/google/gson/stream/a;->bgg:I
shl-int/lit8 v2, v2, 0x1
new-array v2, v2, [Ljava/lang/String;
.line 1268
iget-object v3, p0, Lcom/google/gson/stream/a;->bhU:[I
iget v4, p0, Lcom/google/gson/stream/a;->bgg:I
invoke-static {v3, v5, v0, v5, v4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 1269
iget-object v3, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v4, p0, Lcom/google/gson/stream/a;->bgg:I
invoke-static {v3, v5, v1, v5, v4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 1270
iget-object v3, p0, Lcom/google/gson/stream/a;->bgh:[Ljava/lang/String;
iget v4, p0, Lcom/google/gson/stream/a;->bgg:I
invoke-static {v3, v5, v2, v5, v4}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
.line 1271
iput-object v0, p0, Lcom/google/gson/stream/a;->bhU:[I
.line 1272
iput-object v1, p0, Lcom/google/gson/stream/a;->bgi:[I
.line 1273
iput-object v2, p0, Lcom/google/gson/stream/a;->bgh:[Ljava/lang/String;
.line 1275
:cond_35
iget-object v0, p0, Lcom/google/gson/stream/a;->bhU:[I
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v2, v1, 0x1
iput v2, p0, Lcom/google/gson/stream/a;->bgg:I
aput p1, v0, v1
.line 1276
return-void
.end method
# virtual methods
.method public Aj()Lcom/google/gson/stream/JsonToken;
.registers 2
.prologue
.line 423
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 424
if-nez v0, :cond_8
.line 425
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 428
:cond_8
packed-switch v0, :pswitch_data_30
.line 457
new-instance v0, Ljava/lang/AssertionError;
invoke-direct {v0}, Ljava/lang/AssertionError;-><init>()V
throw v0
.line 430
:pswitch_11
sget-object v0, Lcom/google/gson/stream/JsonToken;->BEGIN_OBJECT:Lcom/google/gson/stream/JsonToken;
.line 455
:goto_13
return-object v0
.line 432
:pswitch_14
sget-object v0, Lcom/google/gson/stream/JsonToken;->END_OBJECT:Lcom/google/gson/stream/JsonToken;
goto :goto_13
.line 434
:pswitch_17
sget-object v0, Lcom/google/gson/stream/JsonToken;->BEGIN_ARRAY:Lcom/google/gson/stream/JsonToken;
goto :goto_13
.line 436
:pswitch_1a
sget-object v0, Lcom/google/gson/stream/JsonToken;->END_ARRAY:Lcom/google/gson/stream/JsonToken;
goto :goto_13
.line 440
:pswitch_1d
sget-object v0, Lcom/google/gson/stream/JsonToken;->NAME:Lcom/google/gson/stream/JsonToken;
goto :goto_13
.line 443
:pswitch_20
sget-object v0, Lcom/google/gson/stream/JsonToken;->BOOLEAN:Lcom/google/gson/stream/JsonToken;
goto :goto_13
.line 445
:pswitch_23
sget-object v0, Lcom/google/gson/stream/JsonToken;->NULL:Lcom/google/gson/stream/JsonToken;
goto :goto_13
.line 450
:pswitch_26
sget-object v0, Lcom/google/gson/stream/JsonToken;->STRING:Lcom/google/gson/stream/JsonToken;
goto :goto_13
.line 453
:pswitch_29
sget-object v0, Lcom/google/gson/stream/JsonToken;->NUMBER:Lcom/google/gson/stream/JsonToken;
goto :goto_13
.line 455
:pswitch_2c
sget-object v0, Lcom/google/gson/stream/JsonToken;->END_DOCUMENT:Lcom/google/gson/stream/JsonToken;
goto :goto_13
.line 428
nop
:pswitch_data_30
.packed-switch 0x1
:pswitch_11
:pswitch_14
:pswitch_17
:pswitch_1a
:pswitch_20
:pswitch_20
:pswitch_23
:pswitch_26
:pswitch_26
:pswitch_26
:pswitch_26
:pswitch_1d
:pswitch_1d
:pswitch_1d
:pswitch_29
:pswitch_29
:pswitch_2c
.end packed-switch
.end method
.method final Am()Ljava/lang/String;
.registers 5
.prologue
.line 1458
iget v0, p0, Lcom/google/gson/stream/a;->bhO:I
add-int/lit8 v0, v0, 0x1
.line 1459
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
iget v2, p0, Lcom/google/gson/stream/a;->bhP:I
sub-int/2addr v1, v2
add-int/lit8 v1, v1, 0x1
.line 1460
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, " at line "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
const-string v2, " column "
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v0
const-string v1, " path "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {p0}, Lcom/google/gson/stream/a;->getPath()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method final An()I
.registers 9
.prologue
const/4 v4, 0x7
const/4 v7, 0x5
const/4 v1, 0x4
const/4 v2, 0x2
const/4 v3, 0x1
.line 462
iget-object v0, p0, Lcom/google/gson/stream/a;->bhU:[I
iget v5, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v5, v5, -0x1
aget v5, v0, v5
.line 463
if-ne v5, v3, :cond_2b
.line 464
iget-object v0, p0, Lcom/google/gson/stream/a;->bhU:[I
iget v6, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v6, v6, -0x1
aput v2, v0, v6
.line 549
:cond_17
:goto_17
:pswitch_17
:sswitch_17
invoke-direct {p0, v3}, Lcom/google/gson/stream/a;->aV(Z)I
move-result v0
.line 550
sparse-switch v0, :sswitch_data_1aa
.line 576
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 579
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ao()I
move-result v0
.line 580
if-eqz v0, :cond_188
.line 594
:cond_2a
:goto_2a
return v0
.line 465
:cond_2b
if-ne v5, v2, :cond_43
.line 467
invoke-direct {p0, v3}, Lcom/google/gson/stream/a;->aV(Z)I
move-result v0
.line 468
sparse-switch v0, :sswitch_data_1c8
.line 476
const-string v0, "Unterminated array"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 470
:sswitch_3b
iput v1, p0, Lcom/google/gson/stream/a;->bhQ:I
move v0, v1
goto :goto_2a
.line 472
:sswitch_3f
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
goto :goto_17
.line 478
:cond_43
const/4 v0, 0x3
if-eq v5, v0, :cond_48
if-ne v5, v7, :cond_a4
.line 479
:cond_48
iget-object v0, p0, Lcom/google/gson/stream/a;->bhU:[I
iget v4, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v4, v4, -0x1
aput v1, v0, v4
.line 481
if-ne v5, v7, :cond_67
.line 482
invoke-direct {p0, v3}, Lcom/google/gson/stream/a;->aV(Z)I
move-result v0
.line 483
sparse-switch v0, :sswitch_data_1d6
.line 491
const-string v0, "Unterminated object"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 485
:sswitch_60
iput v2, p0, Lcom/google/gson/stream/a;->bhQ:I
move v0, v2
goto :goto_2a
.line 487
:sswitch_64
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 494
:cond_67
:sswitch_67
invoke-direct {p0, v3}, Lcom/google/gson/stream/a;->aV(Z)I
move-result v0
.line 495
sparse-switch v0, :sswitch_data_1e4
.line 508
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 509
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v1, v1, -0x1
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
.line 510
int-to-char v0, v0
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->h(C)Z
move-result v0
if-eqz v0, :cond_9d
.line 511
const/16 v0, 0xe
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto :goto_2a
.line 497
:sswitch_83
const/16 v0, 0xd
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto :goto_2a
.line 499
:sswitch_88
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 500
const/16 v0, 0xc
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto :goto_2a
.line 502
:sswitch_90
if-eq v5, v7, :cond_96
.line 503
iput v2, p0, Lcom/google/gson/stream/a;->bhQ:I
move v0, v2
goto :goto_2a
.line 505
:cond_96
const-string v0, "Expected name"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 513
:cond_9d
const-string v0, "Expected name"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 516
:cond_a4
if-ne v5, v1, :cond_dd
.line 517
iget-object v0, p0, Lcom/google/gson/stream/a;->bhU:[I
iget v6, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v6, v6, -0x1
aput v7, v0, v6
.line 519
invoke-direct {p0, v3}, Lcom/google/gson/stream/a;->aV(Z)I
move-result v0
.line 520
packed-switch v0, :pswitch_data_1f2
.line 530
:pswitch_b5
const-string v0, "Expected \':\'"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 524
:pswitch_bc
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 525
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
iget v6, p0, Lcom/google/gson/stream/a;->limit:I
if-lt v0, v6, :cond_cb
invoke-direct {p0, v3}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v0
if-eqz v0, :cond_17
:cond_cb
iget-object v0, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v6, p0, Lcom/google/gson/stream/a;->pos:I
aget-char v0, v0, v6
const/16 v6, 0x3e
if-ne v0, v6, :cond_17
.line 526
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, 0x1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
goto/16 :goto_17
.line 532
:cond_dd
const/4 v0, 0x6
if-ne v5, v0, :cond_128
.line 533
iget-boolean v0, p0, Lcom/google/gson/stream/a;->bhN:Z
if-eqz v0, :cond_11e
.line 2576
invoke-direct {p0, v3}, Lcom/google/gson/stream/a;->aV(Z)I
.line 2577
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 2579
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
sget-object v6, Lcom/google/gson/stream/a;->bhM:[C
array-length v6, v6
add-int/2addr v0, v6
iget v6, p0, Lcom/google/gson/stream/a;->limit:I
if-le v0, v6, :cond_100
sget-object v0, Lcom/google/gson/stream/a;->bhM:[C
array-length v0, v0
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v0
if-eqz v0, :cond_11e
.line 2583
:cond_100
const/4 v0, 0x0
:goto_101
sget-object v6, Lcom/google/gson/stream/a;->bhM:[C
array-length v6, v6
if-ge v0, v6, :cond_116
.line 2584
iget-object v6, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v7, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v7, v0
aget-char v6, v6, v7
sget-object v7, Lcom/google/gson/stream/a;->bhM:[C
aget-char v7, v7, v0
if-ne v6, v7, :cond_11e
.line 2583
add-int/lit8 v0, v0, 0x1
goto :goto_101
.line 2590
:cond_116
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
sget-object v6, Lcom/google/gson/stream/a;->bhM:[C
array-length v6, v6
add-int/2addr v0, v6
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 536
:cond_11e
iget-object v0, p0, Lcom/google/gson/stream/a;->bhU:[I
iget v6, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v6, v6, -0x1
aput v4, v0, v6
goto/16 :goto_17
.line 537
:cond_128
if-ne v5, v4, :cond_143
.line 538
const/4 v0, 0x0
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->aV(Z)I
move-result v0
.line 539
const/4 v6, -0x1
if-ne v0, v6, :cond_138
.line 540
const/16 v0, 0x11
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto/16 :goto_2a
.line 542
:cond_138
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 543
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
goto/16 :goto_17
.line 545
:cond_143
const/16 v0, 0x8
if-ne v5, v0, :cond_17
.line 546
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "JsonReader is closed"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 552
:sswitch_14f
if-ne v5, v3, :cond_156
.line 553
iput v1, p0, Lcom/google/gson/stream/a;->bhQ:I
move v0, v1
goto/16 :goto_2a
.line 559
:cond_156
:sswitch_156
if-eq v5, v3, :cond_15a
if-ne v5, v2, :cond_168
.line 560
:cond_15a
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 561
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 562
iput v4, p0, Lcom/google/gson/stream/a;->bhQ:I
move v0, v4
goto/16 :goto_2a
.line 564
:cond_168
const-string v0, "Unexpected value"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 567
:sswitch_16f
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 568
const/16 v0, 0x8
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto/16 :goto_2a
.line 570
:sswitch_178
const/16 v0, 0x9
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto/16 :goto_2a
.line 572
:sswitch_17e
const/4 v0, 0x3
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto/16 :goto_2a
.line 574
:sswitch_183
iput v3, p0, Lcom/google/gson/stream/a;->bhQ:I
move v0, v3
goto/16 :goto_2a
.line 584
:cond_188
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ap()I
move-result v0
.line 585
if-nez v0, :cond_2a
.line 589
iget-object v0, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
aget-char v0, v0, v1
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->h(C)Z
move-result v0
if-nez v0, :cond_1a1
.line 590
const-string v0, "Expected value"
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->fp(Ljava/lang/String;)Ljava/io/IOException;
move-result-object v0
throw v0
.line 593
:cond_1a1
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 594
const/16 v0, 0xa
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
goto/16 :goto_2a
.line 550
:sswitch_data_1aa
.sparse-switch
0x22 -> :sswitch_178
0x27 -> :sswitch_16f
0x2c -> :sswitch_156
0x3b -> :sswitch_156
0x5b -> :sswitch_17e
0x5d -> :sswitch_14f
0x7b -> :sswitch_183
.end sparse-switch
.line 468
:sswitch_data_1c8
.sparse-switch
0x2c -> :sswitch_17
0x3b -> :sswitch_3f
0x5d -> :sswitch_3b
.end sparse-switch
.line 483
:sswitch_data_1d6
.sparse-switch
0x2c -> :sswitch_67
0x3b -> :sswitch_64
0x7d -> :sswitch_60
.end sparse-switch
.line 495
:sswitch_data_1e4
.sparse-switch
0x22 -> :sswitch_83
0x27 -> :sswitch_88
0x7d -> :sswitch_90
.end sparse-switch
.line 520
:pswitch_data_1f2
.packed-switch 0x3a
:pswitch_17
:pswitch_b5
:pswitch_b5
:pswitch_bc
.end packed-switch
.end method
.method public beginArray()V
.registers 4
.prologue
const/4 v2, 0x0
.line 341
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 342
if-nez v0, :cond_9
.line 343
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 345
:cond_9
const/4 v1, 0x3
if-ne v0, v1, :cond_1b
.line 346
const/4 v0, 0x1
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->push(I)V
.line 347
iget-object v0, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v1, v1, -0x1
aput v2, v0, v1
.line 348
iput v2, p0, Lcom/google/gson/stream/a;->bhQ:I
return-void
.line 350
:cond_1b
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected BEGIN_ARRAY but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public beginObject()V
.registers 4
.prologue
.line 377
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 378
if-nez v0, :cond_8
.line 379
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 381
:cond_8
const/4 v1, 0x1
if-ne v0, v1, :cond_13
.line 382
const/4 v0, 0x3
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->push(I)V
.line 383
const/4 v0, 0x0
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
return-void
.line 385
:cond_13
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected BEGIN_OBJECT but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public close()V
.registers 4
.prologue
const/4 v2, 0x0
.line 1216
iput v2, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 1217
iget-object v0, p0, Lcom/google/gson/stream/a;->bhU:[I
const/16 v1, 0x8
aput v1, v0, v2
.line 1218
const/4 v0, 0x1
iput v0, p0, Lcom/google/gson/stream/a;->bgg:I
.line 1219
iget-object v0, p0, Lcom/google/gson/stream/a;->in:Ljava/io/Reader;
invoke-virtual {v0}, Ljava/io/Reader;->close()V
.line 1220
return-void
.end method
.method public endArray()V
.registers 4
.prologue
.line 359
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 360
if-nez v0, :cond_8
.line 361
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 363
:cond_8
const/4 v1, 0x4
if-ne v0, v1, :cond_21
.line 364
iget v0, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lcom/google/gson/stream/a;->bgg:I
.line 365
iget-object v0, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v1, v1, -0x1
aget v2, v0, v1
add-int/lit8 v2, v2, 0x1
aput v2, v0, v1
.line 366
const/4 v0, 0x0
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
return-void
.line 368
:cond_21
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected END_ARRAY but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public endObject()V
.registers 4
.prologue
.line 394
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 395
if-nez v0, :cond_8
.line 396
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 398
:cond_8
const/4 v1, 0x2
if-ne v0, v1, :cond_28
.line 399
iget v0, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v0, v0, -0x1
iput v0, p0, Lcom/google/gson/stream/a;->bgg:I
.line 400
iget-object v0, p0, Lcom/google/gson/stream/a;->bgh:[Ljava/lang/String;
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
const/4 v2, 0x0
aput-object v2, v0, v1
.line 401
iget-object v0, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v1, v1, -0x1
aget v2, v0, v1
add-int/lit8 v2, v2, 0x1
aput v2, v0, v1
.line 402
const/4 v0, 0x0
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
return-void
.line 404
:cond_28
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected END_OBJECT but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public getPath()Ljava/lang/String;
.registers 6
.prologue
.line 1468
new-instance v1, Ljava/lang/StringBuilder;
const-string v0, "$"
invoke-direct {v1, v0}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
.line 1469
const/4 v0, 0x0
iget v2, p0, Lcom/google/gson/stream/a;->bgg:I
:goto_a
if-ge v0, v2, :cond_3d
.line 1470
iget-object v3, p0, Lcom/google/gson/stream/a;->bhU:[I
aget v3, v3, v0
packed-switch v3, :pswitch_data_42
.line 1469
:cond_13
:goto_13
add-int/lit8 v0, v0, 0x1
goto :goto_a
.line 1473
:pswitch_16
const/16 v3, 0x5b
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
move-result-object v3
iget-object v4, p0, Lcom/google/gson/stream/a;->bgi:[I
aget v4, v4, v0
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
move-result-object v3
const/16 v4, 0x5d
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
goto :goto_13
.line 1479
:pswitch_2a
const/16 v3, 0x2e
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder;
.line 1480
iget-object v3, p0, Lcom/google/gson/stream/a;->bgh:[Ljava/lang/String;
aget-object v3, v3, v0
if-eqz v3, :cond_13
.line 1481
iget-object v3, p0, Lcom/google/gson/stream/a;->bgh:[Ljava/lang/String;
aget-object v3, v3, v0
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
goto :goto_13
.line 1491
:cond_3d
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.line 1470
:pswitch_data_42
.packed-switch 0x1
:pswitch_16
:pswitch_16
:pswitch_2a
:pswitch_2a
:pswitch_2a
.end packed-switch
.end method
.method public hasNext()Z
.registers 3
.prologue
.line 412
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 413
if-nez v0, :cond_8
.line 414
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 416
:cond_8
const/4 v1, 0x2
if-eq v0, v1, :cond_10
const/4 v1, 0x4
if-eq v0, v1, :cond_10
const/4 v0, 0x1
:goto_f
return v0
:cond_10
const/4 v0, 0x0
goto :goto_f
.end method
.method public nextBoolean()Z
.registers 5
.prologue
const/4 v0, 0x0
.line 840
iget v1, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 841
if-nez v1, :cond_9
.line 842
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v1
.line 844
:cond_9
const/4 v2, 0x5
if-ne v1, v2, :cond_1c
.line 845
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 846
iget-object v0, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v1, v1, -0x1
aget v2, v0, v1
add-int/lit8 v2, v2, 0x1
aput v2, v0, v1
.line 847
const/4 v0, 0x1
.line 851
:goto_1b
return v0
.line 848
:cond_1c
const/4 v2, 0x6
if-ne v1, v2, :cond_2e
.line 849
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 850
iget-object v1, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v2, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v2, v2, -0x1
aget v3, v1, v2
add-int/lit8 v3, v3, 0x1
aput v3, v1, v2
goto :goto_1b
.line 853
:cond_2e
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected a boolean but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public nextDouble()D
.registers 7
.prologue
const/16 v5, 0xb
const/16 v2, 0x8
const/4 v4, 0x0
.line 886
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 887
if-nez v0, :cond_d
.line 888
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 891
:cond_d
const/16 v1, 0xf
if-ne v0, v1, :cond_23
.line 892
iput v4, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 893
iget-object v0, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v1, v1, -0x1
aget v2, v0, v1
add-int/lit8 v2, v2, 0x1
aput v2, v0, v1
.line 894
iget-wide v0, p0, Lcom/google/gson/stream/a;->bhR:J
long-to-double v0, v0
.line 917
:goto_22
return-wide v0
.line 897
:cond_23
const/16 v1, 0x10
if-ne v0, v1, :cond_70
.line 898
new-instance v0, Ljava/lang/String;
iget-object v1, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
iget v3, p0, Lcom/google/gson/stream/a;->bhS:I
invoke-direct {v0, v1, v2, v3}, Ljava/lang/String;-><init>([CII)V
iput-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
.line 899
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
iget v1, p0, Lcom/google/gson/stream/a;->bhS:I
add-int/2addr v0, v1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 908
:cond_3b
:goto_3b
iput v5, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 909
iget-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
move-result-wide v0
.line 910
iget-boolean v2, p0, Lcom/google/gson/stream/a;->bhN:Z
if-nez v2, :cond_b2
invoke-static {v0, v1}, Ljava/lang/Double;->isNaN(D)Z
move-result v2
if-nez v2, :cond_53
invoke-static {v0, v1}, Ljava/lang/Double;->isInfinite(D)Z
move-result v2
if-eqz v2, :cond_b2
.line 911
:cond_53
new-instance v2, Lcom/google/gson/stream/MalformedJsonException;
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "JSON forbids NaN and infinities: "
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v3, v0, v1}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
move-result-object v0
.line 912
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {v2, v0}, Lcom/google/gson/stream/MalformedJsonException;-><init>(Ljava/lang/String;)V
throw v2
.line 900
:cond_70
if-eq v0, v2, :cond_76
const/16 v1, 0x9
if-ne v0, v1, :cond_84
.line 901
:cond_76
if-ne v0, v2, :cond_81
const/16 v0, 0x27
:goto_7a
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->i(C)Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
goto :goto_3b
:cond_81
const/16 v0, 0x22
goto :goto_7a
.line 902
:cond_84
const/16 v1, 0xa
if-ne v0, v1, :cond_8f
.line 903
invoke-direct {p0}, Lcom/google/gson/stream/a;->Aq()Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
goto :goto_3b
.line 904
:cond_8f
if-eq v0, v5, :cond_3b
.line 905
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected a double but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 914
:cond_b2
const/4 v2, 0x0
iput-object v2, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
.line 915
iput v4, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 916
iget-object v2, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v3, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v3, v3, -0x1
aget v4, v2, v3
add-int/lit8 v4, v4, 0x1
aput v4, v2, v3
goto/16 :goto_22
.end method
.method public nextInt()I
.registers 8
.prologue
const/16 v3, 0xa
const/16 v2, 0x8
const/4 v6, 0x0
.line 1163
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 1164
if-nez v0, :cond_d
.line 1165
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 1169
:cond_d
const/16 v1, 0xf
if-ne v0, v1, :cond_49
.line 1170
iget-wide v0, p0, Lcom/google/gson/stream/a;->bhR:J
long-to-int v0, v0
.line 1171
iget-wide v2, p0, Lcom/google/gson/stream/a;->bhR:J
int-to-long v4, v0
cmp-long v1, v2, v4
if-eqz v1, :cond_3a
.line 1172
new-instance v0, Ljava/lang/NumberFormatException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected an int but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-wide v2, p0, Lcom/google/gson/stream/a;->bhR:J
invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/NumberFormatException;-><init>(Ljava/lang/String;)V
throw v0
.line 1174
:cond_3a
iput v6, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 1175
iget-object v1, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v2, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v2, v2, -0x1
aget v3, v1, v2
add-int/lit8 v3, v3, 0x1
aput v3, v1, v2
.line 1209
:goto_48
return v0
.line 1179
:cond_49
const/16 v1, 0x10
if-ne v0, v1, :cond_90
.line 1180
new-instance v0, Ljava/lang/String;
iget-object v1, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
iget v3, p0, Lcom/google/gson/stream/a;->bhS:I
invoke-direct {v0, v1, v2, v3}, Ljava/lang/String;-><init>([CII)V
iput-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
.line 1181
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
iget v1, p0, Lcom/google/gson/stream/a;->bhS:I
add-int/2addr v0, v1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 1200
:goto_61
const/16 v0, 0xb
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 1201
iget-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
move-result-wide v2
.line 1202
double-to-int v0, v2
.line 1203
int-to-double v4, v0
cmpl-double v1, v4, v2
if-eqz v1, :cond_e7
.line 1204
new-instance v0, Ljava/lang/NumberFormatException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected an int but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v2, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/NumberFormatException;-><init>(Ljava/lang/String;)V
throw v0
.line 1182
:cond_90
if-eq v0, v2, :cond_98
const/16 v1, 0x9
if-eq v0, v1, :cond_98
if-ne v0, v3, :cond_c6
.line 1183
:cond_98
if-ne v0, v3, :cond_b8
.line 1184
invoke-direct {p0}, Lcom/google/gson/stream/a;->Aq()Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
.line 1189
:goto_a0
:try_start_a0
iget-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
invoke-static {v0}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
move-result v0
.line 1190
const/4 v1, 0x0
iput v1, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 1191
iget-object v1, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v2, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v2, v2, -0x1
aget v3, v1, v2
add-int/lit8 v3, v3, 0x1
aput v3, v1, v2
:try_end_b5
.catch Ljava/lang/NumberFormatException; {:try_start_a0 .. :try_end_b5} :catch_b6
goto :goto_48
.line 1195
:catch_b6
move-exception v0
goto :goto_61
.line 1186
:cond_b8
if-ne v0, v2, :cond_c3
const/16 v0, 0x27
:goto_bc
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->i(C)Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
goto :goto_a0
:cond_c3
const/16 v0, 0x22
goto :goto_bc
.line 1197
:cond_c6
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected an int but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 1206
:cond_e7
const/4 v1, 0x0
iput-object v1, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
.line 1207
iput v6, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 1208
iget-object v1, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v2, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v2, v2, -0x1
aget v3, v1, v2
add-int/lit8 v3, v3, 0x1
aput v3, v1, v2
goto/16 :goto_48
.end method
.method public nextLong()J
.registers 8
.prologue
const/16 v3, 0xa
const/16 v2, 0x8
const/4 v6, 0x0
.line 931
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 932
if-nez v0, :cond_d
.line 933
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 936
:cond_d
const/16 v1, 0xf
if-ne v0, v1, :cond_22
.line 937
iput v6, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 938
iget-object v0, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v1, v1, -0x1
aget v2, v0, v1
add-int/lit8 v2, v2, 0x1
aput v2, v0, v1
.line 939
iget-wide v0, p0, Lcom/google/gson/stream/a;->bhR:J
.line 972
:goto_21
return-wide v0
.line 942
:cond_22
const/16 v1, 0x10
if-ne v0, v1, :cond_69
.line 943
new-instance v0, Ljava/lang/String;
iget-object v1, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
iget v3, p0, Lcom/google/gson/stream/a;->bhS:I
invoke-direct {v0, v1, v2, v3}, Ljava/lang/String;-><init>([CII)V
iput-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
.line 944
iget v0, p0, Lcom/google/gson/stream/a;->pos:I
iget v1, p0, Lcom/google/gson/stream/a;->bhS:I
add-int/2addr v0, v1
iput v0, p0, Lcom/google/gson/stream/a;->pos:I
.line 963
:goto_3a
const/16 v0, 0xb
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 964
iget-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
move-result-wide v2
.line 965
double-to-long v0, v2
.line 966
long-to-double v4, v0
cmpl-double v2, v4, v2
if-eqz v2, :cond_c0
.line 967
new-instance v0, Ljava/lang/NumberFormatException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected a long but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v2, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/NumberFormatException;-><init>(Ljava/lang/String;)V
throw v0
.line 945
:cond_69
if-eq v0, v2, :cond_71
const/16 v1, 0x9
if-eq v0, v1, :cond_71
if-ne v0, v3, :cond_9f
.line 946
:cond_71
if-ne v0, v3, :cond_91
.line 947
invoke-direct {p0}, Lcom/google/gson/stream/a;->Aq()Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
.line 952
:goto_79
:try_start_79
iget-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
invoke-static {v0}, Ljava/lang/Long;->parseLong(Ljava/lang/String;)J
move-result-wide v0
.line 953
const/4 v2, 0x0
iput v2, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 954
iget-object v2, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v3, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v3, v3, -0x1
aget v4, v2, v3
add-int/lit8 v4, v4, 0x1
aput v4, v2, v3
:try_end_8e
.catch Ljava/lang/NumberFormatException; {:try_start_79 .. :try_end_8e} :catch_8f
goto :goto_21
.line 958
:catch_8f
move-exception v0
goto :goto_3a
.line 949
:cond_91
if-ne v0, v2, :cond_9c
const/16 v0, 0x27
:goto_95
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->i(C)Ljava/lang/String;
move-result-object v0
iput-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
goto :goto_79
:cond_9c
const/16 v0, 0x22
goto :goto_95
.line 960
:cond_9f
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected a long but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 969
:cond_c0
const/4 v2, 0x0
iput-object v2, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
.line 970
iput v6, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 971
iget-object v2, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v3, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v3, v3, -0x1
aget v4, v2, v3
add-int/lit8 v4, v4, 0x1
aput v4, v2, v3
goto/16 :goto_21
.end method
.method public nextName()Ljava/lang/String;
.registers 4
.prologue
.line 777
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 778
if-nez v0, :cond_8
.line 779
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 782
:cond_8
const/16 v1, 0xe
if-ne v0, v1, :cond_1c
.line 783
invoke-direct {p0}, Lcom/google/gson/stream/a;->Aq()Ljava/lang/String;
move-result-object v0
.line 791
:goto_10
const/4 v1, 0x0
iput v1, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 792
iget-object v1, p0, Lcom/google/gson/stream/a;->bgh:[Ljava/lang/String;
iget v2, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v2, v2, -0x1
aput-object v0, v1, v2
.line 793
return-object v0
.line 784
:cond_1c
const/16 v1, 0xc
if-ne v0, v1, :cond_27
.line 785
const/16 v0, 0x27
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->i(C)Ljava/lang/String;
move-result-object v0
goto :goto_10
.line 786
:cond_27
const/16 v1, 0xd
if-ne v0, v1, :cond_32
.line 787
const/16 v0, 0x22
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->i(C)Ljava/lang/String;
move-result-object v0
goto :goto_10
.line 789
:cond_32
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected a name but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public nextNull()V
.registers 4
.prologue
.line 864
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 865
if-nez v0, :cond_8
.line 866
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 868
:cond_8
const/4 v1, 0x7
if-ne v0, v1, :cond_1b
.line 869
const/4 v0, 0x0
iput v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 870
iget-object v0, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v1, v1, -0x1
aget v2, v0, v1
add-int/lit8 v2, v2, 0x1
aput v2, v0, v1
return-void
.line 872
:cond_1b
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected null but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public nextString()Ljava/lang/String;
.registers 5
.prologue
.line 805
iget v0, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 806
if-nez v0, :cond_8
.line 807
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v0
.line 810
:cond_8
const/16 v1, 0xa
if-ne v0, v1, :cond_20
.line 811
invoke-direct {p0}, Lcom/google/gson/stream/a;->Aq()Ljava/lang/String;
move-result-object v0
.line 827
:goto_10
const/4 v1, 0x0
iput v1, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 828
iget-object v1, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v2, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v2, v2, -0x1
aget v3, v1, v2
add-int/lit8 v3, v3, 0x1
aput v3, v1, v2
.line 829
return-object v0
.line 812
:cond_20
const/16 v1, 0x8
if-ne v0, v1, :cond_2b
.line 813
const/16 v0, 0x27
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->i(C)Ljava/lang/String;
move-result-object v0
goto :goto_10
.line 814
:cond_2b
const/16 v1, 0x9
if-ne v0, v1, :cond_36
.line 815
const/16 v0, 0x22
invoke-direct {p0, v0}, Lcom/google/gson/stream/a;->i(C)Ljava/lang/String;
move-result-object v0
goto :goto_10
.line 816
:cond_36
const/16 v1, 0xb
if-ne v0, v1, :cond_40
.line 817
iget-object v0, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
.line 818
const/4 v1, 0x0
iput-object v1, p0, Lcom/google/gson/stream/a;->bhT:Ljava/lang/String;
goto :goto_10
.line 819
:cond_40
const/16 v1, 0xf
if-ne v0, v1, :cond_4b
.line 820
iget-wide v0, p0, Lcom/google/gson/stream/a;->bhR:J
invoke-static {v0, v1}, Ljava/lang/Long;->toString(J)Ljava/lang/String;
move-result-object v0
goto :goto_10
.line 821
:cond_4b
const/16 v1, 0x10
if-ne v0, v1, :cond_62
.line 822
new-instance v0, Ljava/lang/String;
iget-object v1, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
iget v3, p0, Lcom/google/gson/stream/a;->bhS:I
invoke-direct {v0, v1, v2, v3}, Ljava/lang/String;-><init>([CII)V
.line 823
iget v1, p0, Lcom/google/gson/stream/a;->pos:I
iget v2, p0, Lcom/google/gson/stream/a;->bhS:I
add-int/2addr v1, v2
iput v1, p0, Lcom/google/gson/stream/a;->pos:I
goto :goto_10
.line 825
:cond_62
new-instance v0, Ljava/lang/IllegalStateException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v2, "Expected a string but was "
invoke-direct {v1, v2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Aj()Lcom/google/gson/stream/JsonToken;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public skipValue()V
.registers 8
.prologue
const/4 v6, 0x3
const/4 v5, 0x1
const/4 v1, 0x0
.line 1228
move v0, v1
.line 1230
:cond_4
iget v2, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 1231
if-nez v2, :cond_c
.line 1232
invoke-virtual {p0}, Lcom/google/gson/stream/a;->An()I
move-result v2
.line 1235
:cond_c
if-ne v2, v6, :cond_2e
.line 1236
invoke-direct {p0, v5}, Lcom/google/gson/stream/a;->push(I)V
.line 1237
add-int/lit8 v0, v0, 0x1
.line 1256
:cond_13
:goto_13
iput v1, p0, Lcom/google/gson/stream/a;->bhQ:I
.line 1257
if-nez v0, :cond_4
.line 1259
iget-object v0, p0, Lcom/google/gson/stream/a;->bgi:[I
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v1, v1, -0x1
aget v2, v0, v1
add-int/lit8 v2, v2, 0x1
aput v2, v0, v1
.line 1260
iget-object v0, p0, Lcom/google/gson/stream/a;->bgh:[Ljava/lang/String;
iget v1, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v1, v1, -0x1
const-string v2, "null"
aput-object v2, v0, v1
.line 1261
return-void
.line 1238
:cond_2e
if-ne v2, v5, :cond_36
.line 1239
invoke-direct {p0, v6}, Lcom/google/gson/stream/a;->push(I)V
.line 1240
add-int/lit8 v0, v0, 0x1
goto :goto_13
.line 1241
:cond_36
const/4 v3, 0x4
if-ne v2, v3, :cond_42
.line 1242
iget v2, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v2, v2, -0x1
iput v2, p0, Lcom/google/gson/stream/a;->bgg:I
.line 1243
add-int/lit8 v0, v0, -0x1
goto :goto_13
.line 1244
:cond_42
const/4 v3, 0x2
if-ne v2, v3, :cond_4e
.line 1245
iget v2, p0, Lcom/google/gson/stream/a;->bgg:I
add-int/lit8 v2, v2, -0x1
iput v2, p0, Lcom/google/gson/stream/a;->bgg:I
.line 1246
add-int/lit8 v0, v0, -0x1
goto :goto_13
.line 1247
:cond_4e
const/16 v3, 0xe
if-eq v2, v3, :cond_56
const/16 v3, 0xa
if-ne v2, v3, :cond_80
:cond_56
move v2, v1
.line 3125
:goto_57
iget v3, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v3, v2
iget v4, p0, Lcom/google/gson/stream/a;->limit:I
if-ge v3, v4, :cond_74
.line 3126
iget-object v3, p0, Lcom/google/gson/stream/a;->buffer:[C
iget v4, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v4, v2
aget-char v3, v3, v4
sparse-switch v3, :sswitch_data_aa
.line 3125
add-int/lit8 v2, v2, 0x1
goto :goto_57
.line 3132
:sswitch_6b
invoke-direct {p0}, Lcom/google/gson/stream/a;->Ar()V
.line 3144
:sswitch_6e
iget v3, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v2, v3
iput v2, p0, Lcom/google/gson/stream/a;->pos:I
goto :goto_13
.line 3148
:cond_74
iget v3, p0, Lcom/google/gson/stream/a;->pos:I
add-int/2addr v2, v3
iput v2, p0, Lcom/google/gson/stream/a;->pos:I
.line 3149
invoke-direct {p0, v5}, Lcom/google/gson/stream/a;->dl(I)Z
move-result v2
if-nez v2, :cond_56
goto :goto_13
.line 1249
:cond_80
const/16 v3, 0x8
if-eq v2, v3, :cond_88
const/16 v3, 0xc
if-ne v2, v3, :cond_8e
.line 1250
:cond_88
const/16 v2, 0x27
invoke-direct {p0, v2}, Lcom/google/gson/stream/a;->j(C)V
goto :goto_13
.line 1251
:cond_8e
const/16 v3, 0x9
if-eq v2, v3, :cond_96
const/16 v3, 0xd
if-ne v2, v3, :cond_9d
.line 1252
:cond_96
const/16 v2, 0x22
invoke-direct {p0, v2}, Lcom/google/gson/stream/a;->j(C)V
goto/16 :goto_13
.line 1253
:cond_9d
const/16 v3, 0x10
if-ne v2, v3, :cond_13
.line 1254
iget v2, p0, Lcom/google/gson/stream/a;->pos:I
iget v3, p0, Lcom/google/gson/stream/a;->bhS:I
add-int/2addr v2, v3
iput v2, p0, Lcom/google/gson/stream/a;->pos:I
goto/16 :goto_13
.line 3126
:sswitch_data_aa
.sparse-switch
0x9 -> :sswitch_6e
0xa -> :sswitch_6e
0xc -> :sswitch_6e
0xd -> :sswitch_6e
0x20 -> :sswitch_6e
0x23 -> :sswitch_6b
0x2c -> :sswitch_6e
0x2f -> :sswitch_6b
0x3a -> :sswitch_6e
0x3b -> :sswitch_6b
0x3d -> :sswitch_6b
0x5b -> :sswitch_6e
0x5c -> :sswitch_6b
0x5d -> :sswitch_6e
0x7b -> :sswitch_6e
0x7d -> :sswitch_6e
.end sparse-switch
.end method
.method public toString()Ljava/lang/String;
.registers 3
.prologue
.line 1454
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {p0}, Lcom/google/gson/stream/a;->Am()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method