Streams.smali 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. .class public final Lcom/google/gson/internal/Streams;
  2. .super Ljava/lang/Object;
  3. .source "Streams.java"
  4. # annotations
  5. .annotation system Ldalvik/annotation/MemberClasses;
  6. value = {
  7. Lcom/google/gson/internal/Streams$AppendableWriter;
  8. }
  9. .end annotation
  10. # direct methods
  11. .method private constructor <init>()V
  12. .locals 1
  13. .line 36
  14. invoke-direct {p0}, Ljava/lang/Object;-><init>()V
  15. .line 37
  16. new-instance v0, Ljava/lang/UnsupportedOperationException;
  17. invoke-direct {v0}, Ljava/lang/UnsupportedOperationException;-><init>()V
  18. throw v0
  19. .end method
  20. .method public static parse(Lcom/google/gson/stream/JsonReader;)Lcom/google/gson/JsonElement;
  21. .locals 3
  22. .param p0, "reader" # Lcom/google/gson/stream/JsonReader;
  23. .annotation system Ldalvik/annotation/Throws;
  24. value = {
  25. Lcom/google/gson/JsonParseException;
  26. }
  27. .end annotation
  28. .line 44
  29. const/4 v0, 0x1
  30. .line 46
  31. .local v0, "isEmpty":Z
  32. :try_start_0
  33. invoke-virtual {p0}, Lcom/google/gson/stream/JsonReader;->peek()Lcom/google/gson/stream/JsonToken;
  34. .line 47
  35. const/4 v0, 0x0
  36. .line 48
  37. sget-object v1, Lcom/google/gson/internal/bind/TypeAdapters;->JSON_ELEMENT:Lcom/google/gson/TypeAdapter;
  38. invoke-virtual {v1, p0}, Lcom/google/gson/TypeAdapter;->read(Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object;
  39. move-result-object v1
  40. check-cast v1, Lcom/google/gson/JsonElement;
  41. :try_end_0
  42. .catch Ljava/io/EOFException; {:try_start_0 .. :try_end_0} :catch_3
  43. .catch Lcom/google/gson/stream/MalformedJsonException; {:try_start_0 .. :try_end_0} :catch_2
  44. .catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_1
  45. .catch Ljava/lang/NumberFormatException; {:try_start_0 .. :try_end_0} :catch_0
  46. return-object v1
  47. .line 63
  48. :catch_0
  49. move-exception v1
  50. .line 64
  51. .local v1, "e":Ljava/lang/NumberFormatException;
  52. new-instance v2, Lcom/google/gson/JsonSyntaxException;
  53. invoke-direct {v2, v1}, Lcom/google/gson/JsonSyntaxException;-><init>(Ljava/lang/Throwable;)V
  54. throw v2
  55. .line 61
  56. .end local v1 # "e":Ljava/lang/NumberFormatException;
  57. :catch_1
  58. move-exception v1
  59. .line 62
  60. .local v1, "e":Ljava/io/IOException;
  61. new-instance v2, Lcom/google/gson/JsonIOException;
  62. invoke-direct {v2, v1}, Lcom/google/gson/JsonIOException;-><init>(Ljava/lang/Throwable;)V
  63. throw v2
  64. .line 59
  65. .end local v1 # "e":Ljava/io/IOException;
  66. :catch_2
  67. move-exception v1
  68. .line 60
  69. .local v1, "e":Lcom/google/gson/stream/MalformedJsonException;
  70. new-instance v2, Lcom/google/gson/JsonSyntaxException;
  71. invoke-direct {v2, v1}, Lcom/google/gson/JsonSyntaxException;-><init>(Ljava/lang/Throwable;)V
  72. throw v2
  73. .line 49
  74. .end local v1 # "e":Lcom/google/gson/stream/MalformedJsonException;
  75. :catch_3
  76. move-exception v1
  77. .line 54
  78. .local v1, "e":Ljava/io/EOFException;
  79. if-eqz v0, :cond_0
  80. .line 55
  81. sget-object v2, Lcom/google/gson/JsonNull;->INSTANCE:Lcom/google/gson/JsonNull;
  82. return-object v2
  83. .line 58
  84. :cond_0
  85. new-instance v2, Lcom/google/gson/JsonSyntaxException;
  86. invoke-direct {v2, v1}, Lcom/google/gson/JsonSyntaxException;-><init>(Ljava/lang/Throwable;)V
  87. throw v2
  88. .end method
  89. .method public static write(Lcom/google/gson/JsonElement;Lcom/google/gson/stream/JsonWriter;)V
  90. .locals 1
  91. .param p0, "element" # Lcom/google/gson/JsonElement;
  92. .param p1, "writer" # Lcom/google/gson/stream/JsonWriter;
  93. .annotation system Ldalvik/annotation/Throws;
  94. value = {
  95. Ljava/io/IOException;
  96. }
  97. .end annotation
  98. .line 72
  99. sget-object v0, Lcom/google/gson/internal/bind/TypeAdapters;->JSON_ELEMENT:Lcom/google/gson/TypeAdapter;
  100. invoke-virtual {v0, p1, p0}, Lcom/google/gson/TypeAdapter;->write(Lcom/google/gson/stream/JsonWriter;Ljava/lang/Object;)V
  101. .line 73
  102. return-void
  103. .end method
  104. .method public static writerForAppendable(Ljava/lang/Appendable;)Ljava/io/Writer;
  105. .locals 1
  106. .param p0, "appendable" # Ljava/lang/Appendable;
  107. .line 76
  108. instance-of v0, p0, Ljava/io/Writer;
  109. if-eqz v0, :cond_0
  110. move-object v0, p0
  111. check-cast v0, Ljava/io/Writer;
  112. goto :goto_0
  113. :cond_0
  114. new-instance v0, Lcom/google/gson/internal/Streams$AppendableWriter;
  115. invoke-direct {v0, p0}, Lcom/google/gson/internal/Streams$AppendableWriter;-><init>(Ljava/lang/Appendable;)V
  116. :goto_0
  117. return-object v0
  118. .end method