.class public abstract Lcom/alibaba/fastjson/JSON; .super Ljava/lang/Object; .source "JSON.java" # interfaces .implements Lcom/alibaba/fastjson/JSONStreamAware; .implements Lcom/alibaba/fastjson/JSONAware; # static fields .field public static DEFAULT_GENERATE_FEATURE:I = 0x0 .field public static DEFAULT_PARSER_FEATURE:I = 0x0 .field public static final DEFAULT_TYPE_KEY:Ljava/lang/String; = "@type" .field public static DEFFAULT_DATE_FORMAT:Ljava/lang/String; = null .field public static final VERSION:Ljava/lang/String; = "1.1.67" .field public static defaultLocale:Ljava/util/Locale; .field public static defaultTimeZone:Ljava/util/TimeZone; # direct methods .method static constructor ()V .registers 2 .line 55 invoke-static {}, Ljava/util/TimeZone;->getDefault()Ljava/util/TimeZone; move-result-object v0 sput-object v0, Lcom/alibaba/fastjson/JSON;->defaultTimeZone:Ljava/util/TimeZone; .line 56 invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale; move-result-object v0 sput-object v0, Lcom/alibaba/fastjson/JSON;->defaultLocale:Ljava/util/Locale; .line 65 sget-object v0, Lcom/alibaba/fastjson/parser/Feature;->UseBigDecimal:Lcom/alibaba/fastjson/parser/Feature; iget v0, v0, Lcom/alibaba/fastjson/parser/Feature;->mask:I .line 67 sget-object v1, Lcom/alibaba/fastjson/parser/Feature;->SortFeidFastMatch:Lcom/alibaba/fastjson/parser/Feature; iget v1, v1, Lcom/alibaba/fastjson/parser/Feature;->mask:I or-int/2addr v0, v1 .line 68 sget-object v1, Lcom/alibaba/fastjson/parser/Feature;->IgnoreNotMatch:Lcom/alibaba/fastjson/parser/Feature; iget v1, v1, Lcom/alibaba/fastjson/parser/Feature;->mask:I or-int/2addr v0, v1 .line 69 sput v0, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I .line 72 const-string v0, "yyyy-MM-dd HH:mm:ss" sput-object v0, Lcom/alibaba/fastjson/JSON;->DEFFAULT_DATE_FORMAT:Ljava/lang/String; .line 78 sget-object v0, Lcom/alibaba/fastjson/serializer/SerializerFeature;->QuoteFieldNames:Lcom/alibaba/fastjson/serializer/SerializerFeature; iget v0, v0, Lcom/alibaba/fastjson/serializer/SerializerFeature;->mask:I .line 79 sget-object v1, Lcom/alibaba/fastjson/serializer/SerializerFeature;->SkipTransientField:Lcom/alibaba/fastjson/serializer/SerializerFeature; iget v1, v1, Lcom/alibaba/fastjson/serializer/SerializerFeature;->mask:I or-int/2addr v0, v1 .line 80 sget-object v1, Lcom/alibaba/fastjson/serializer/SerializerFeature;->WriteEnumUsingToString:Lcom/alibaba/fastjson/serializer/SerializerFeature; iget v1, v1, Lcom/alibaba/fastjson/serializer/SerializerFeature;->mask:I or-int/2addr v0, v1 .line 81 sget-object v1, Lcom/alibaba/fastjson/serializer/SerializerFeature;->SortField:Lcom/alibaba/fastjson/serializer/SerializerFeature; iget v1, v1, Lcom/alibaba/fastjson/serializer/SerializerFeature;->mask:I or-int/2addr v0, v1 .line 84 sput v0, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I return-void .end method .method public constructor ()V .registers 1 .line 53 invoke-direct {p0}, Ljava/lang/Object;->()V return-void .end method .method public static final parse(Ljava/lang/String;)Ljava/lang/Object; .registers 2 .line 88 sget v0, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I invoke-static {p0, v0}, Lcom/alibaba/fastjson/JSON;->parse(Ljava/lang/String;I)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final parse(Ljava/lang/String;I)Ljava/lang/Object; .registers 5 const/4 v0, 0x0 if-nez p0, :cond_4 return-object v0 .line 96 :cond_4 new-instance v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser; sget-object v2, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; invoke-direct {v1, p0, v2, p1}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;I)V .line 97 invoke-virtual {v1, v0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parse(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p0 .line 99 invoke-virtual {v1, p0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->handleResovleTask(Ljava/lang/Object;)V .line 101 invoke-virtual {v1}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->close()V return-object p0 .end method .method public static parse(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;)Ljava/lang/Object; .registers 3 .line 373 sget v0, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I invoke-static {p0, p1, v0}, Lcom/alibaba/fastjson/JSON;->parse(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;I)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static parse(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;I)Ljava/lang/Object; .registers 4 if-nez p0, :cond_4 const/4 p0, 0x0 return-object p0 .line 393 :cond_4 new-instance v0, Lcom/alibaba/fastjson/parser/DefaultJSONParser; invoke-direct {v0, p0, p1, p2}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;I)V .line 394 invoke-virtual {v0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parse()Ljava/lang/Object; move-result-object p0 .line 396 invoke-virtual {v0, p0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->handleResovleTask(Ljava/lang/Object;)V .line 398 invoke-virtual {v0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->close()V return-object p0 .end method .method public static varargs parse(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 6 .line 377 sget v0, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I const/4 v1, 0x0 .line 378 :goto_3 array-length v2, p2 if-ge v1, v2, :cond_e .line 379 aget-object v2, p2, v1 iget v2, v2, Lcom/alibaba/fastjson/parser/Feature;->mask:I or-int/2addr v0, v2 add-int/lit8 v1, v1, 0x1 goto :goto_3 .line 381 :cond_e invoke-static {p0, p1, v0}, Lcom/alibaba/fastjson/JSON;->parse(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;I)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final varargs parse(Ljava/lang/String;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 6 .line 115 sget v0, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I .line 116 array-length v1, p1 const/4 v2, 0x0 :goto_4 if-ge v2, v1, :cond_e aget-object v3, p1, v2 .line 117 iget v3, v3, Lcom/alibaba/fastjson/parser/Feature;->mask:I or-int/2addr v0, v3 add-int/lit8 v2, v2, 0x1 goto :goto_4 .line 120 :cond_e invoke-static {p0, v0}, Lcom/alibaba/fastjson/JSON;->parse(Ljava/lang/String;I)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final varargs parse([B[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 4 .line 108 :try_start_0 new-instance v0, Ljava/lang/String; const-string v1, "UTF-8" invoke-direct {v0, p0, v1}, Ljava/lang/String;->([BLjava/lang/String;)V invoke-static {v0, p1}, Lcom/alibaba/fastjson/JSON;->parseObject(Ljava/lang/String;[Lcom/alibaba/fastjson/parser/Feature;)Lcom/alibaba/fastjson/JSONObject; move-result-object p0 :try_end_b .catch Ljava/io/UnsupportedEncodingException; {:try_start_0 .. :try_end_b} :catch_c return-object p0 :catch_c move-exception p0 .line 110 new-instance p1, Lcom/alibaba/fastjson/JSONException; const-string v0, "UTF-8 not support" invoke-direct {p1, v0, p0}, Lcom/alibaba/fastjson/JSONException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p1 .end method .method public static final parseArray(Ljava/lang/String;)Lcom/alibaba/fastjson/JSONArray; .registers 2 const/4 v0, 0x0 .line 282 new-array v0, v0, [Lcom/alibaba/fastjson/parser/Feature; invoke-static {p0, v0}, Lcom/alibaba/fastjson/JSON;->parseArray(Ljava/lang/String;[Lcom/alibaba/fastjson/parser/Feature;)Lcom/alibaba/fastjson/JSONArray; move-result-object p0 return-object p0 .end method .method public static final varargs parseArray(Ljava/lang/String;[Lcom/alibaba/fastjson/parser/Feature;)Lcom/alibaba/fastjson/JSONArray; .registers 6 const/4 v0, 0x0 if-nez p0, :cond_4 return-object v0 .line 290 :cond_4 sget v1, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I const/4 v2, 0x0 .line 291 :goto_7 array-length v3, p1 if-ge v2, v3, :cond_12 .line 292 aget-object v3, p1, v2 iget v3, v3, Lcom/alibaba/fastjson/parser/Feature;->mask:I or-int/2addr v1, v3 add-int/lit8 v2, v2, 0x1 goto :goto_7 .line 295 :cond_12 new-instance p1, Lcom/alibaba/fastjson/parser/DefaultJSONParser; sget-object v2, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; invoke-direct {p1, p0, v2, v1}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;I)V .line 299 iget-object p0, p1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->lexer:Lcom/alibaba/fastjson/parser/JSONLexer; .line 300 invoke-virtual {p0}, Lcom/alibaba/fastjson/parser/JSONLexer;->token()I move-result v1 const/16 v2, 0x8 if-ne v1, v2, :cond_27 .line 302 invoke-virtual {p0}, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken()V goto :goto_37 :cond_27 const/16 p0, 0x14 if-ne v1, p0, :cond_2c goto :goto_37 .line 307 :cond_2c new-instance v0, Lcom/alibaba/fastjson/JSONArray; invoke-direct {v0}, Lcom/alibaba/fastjson/JSONArray;->()V .line 308 invoke-virtual {p1, v0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parseArray(Ljava/util/Collection;)V .line 310 invoke-virtual {p1, v0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->handleResovleTask(Ljava/lang/Object;)V .line 313 :goto_37 invoke-virtual {p1}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->close()V return-object v0 .end method .method public static final parseArray(Ljava/lang/String;Ljava/lang/Class;)Ljava/util/List; .registers 6 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/Class<", "TT;>;)", "Ljava/util/List<", "TT;>;" } .end annotation const/4 v0, 0x0 if-nez p0, :cond_4 return-object v0 .line 325 :cond_4 new-instance v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser; sget-object v2, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; invoke-direct {v1, p0, v2}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;)V .line 326 iget-object p0, v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->lexer:Lcom/alibaba/fastjson/parser/JSONLexer; .line 327 invoke-virtual {p0}, Lcom/alibaba/fastjson/parser/JSONLexer;->token()I move-result v2 const/16 v3, 0x8 if-ne v2, v3, :cond_19 .line 329 invoke-virtual {p0}, Lcom/alibaba/fastjson/parser/JSONLexer;->nextToken()V goto :goto_2f :cond_19 const/16 v3, 0x14 if-ne v2, v3, :cond_24 .line 331 invoke-virtual {p0}, Lcom/alibaba/fastjson/parser/JSONLexer;->isBlankInput()Z move-result p0 if-eqz p0, :cond_24 goto :goto_2f .line 334 :cond_24 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V .line 335 invoke-virtual {v1, p1, v0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parseArray(Ljava/lang/Class;Ljava/util/Collection;)V .line 337 invoke-virtual {v1, v0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->handleResovleTask(Ljava/lang/Object;)V .line 340 :goto_2f invoke-virtual {v1}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->close()V return-object v0 .end method .method public static final parseArray(Ljava/lang/String;[Ljava/lang/reflect/Type;)Ljava/util/List; .registers 5 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "[", "Ljava/lang/reflect/Type;", ")", "Ljava/util/List<", "Ljava/lang/Object;", ">;" } .end annotation const/4 v0, 0x0 if-nez p0, :cond_4 return-object v0 .line 352 :cond_4 new-instance v1, Lcom/alibaba/fastjson/parser/DefaultJSONParser; sget-object v2, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; invoke-direct {v1, p0, v2}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;)V .line 353 invoke-virtual {v1, p1}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parseArray([Ljava/lang/reflect/Type;)[Ljava/lang/Object; move-result-object p0 if-nez p0, :cond_12 goto :goto_16 .line 357 :cond_12 invoke-static {p0}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List; move-result-object v0 .line 360 :goto_16 invoke-virtual {v1, v0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->handleResovleTask(Ljava/lang/Object;)V .line 362 invoke-virtual {v1}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->close()V return-object v0 .end method .method public static final parseObject(Ljava/lang/String;)Lcom/alibaba/fastjson/JSONObject; .registers 4 .line 147 invoke-static {p0}, Lcom/alibaba/fastjson/JSON;->parse(Ljava/lang/String;)Ljava/lang/Object; move-result-object p0 .line 148 instance-of v0, p0, Lcom/alibaba/fastjson/JSONObject; if-nez v0, :cond_28 if-nez p0, :cond_b goto :goto_28 .line 152 :cond_b invoke-static {p0}, Lcom/alibaba/fastjson/JSON;->toJSON(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Lcom/alibaba/fastjson/JSONObject; .line 153 sget v1, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I sget-object v2, Lcom/alibaba/fastjson/parser/Feature;->SupportAutoType:Lcom/alibaba/fastjson/parser/Feature; iget v2, v2, Lcom/alibaba/fastjson/parser/Feature;->mask:I and-int/2addr v1, v2 if-eqz v1, :cond_27 .line 156 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object p0 invoke-virtual {p0}, Ljava/lang/Class;->getName()Ljava/lang/String; move-result-object p0 const-string v1, "@type" invoke-virtual {v0, v1, p0}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object; :cond_27 return-object v0 .line 149 :cond_28 :goto_28 check-cast p0, Lcom/alibaba/fastjson/JSONObject; return-object p0 .end method .method public static final varargs parseObject(Ljava/lang/String;[Lcom/alibaba/fastjson/parser/Feature;)Lcom/alibaba/fastjson/JSONObject; .registers 9 .line 124 invoke-static {p0, p1}, Lcom/alibaba/fastjson/JSON;->parse(Ljava/lang/String;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; move-result-object p0 .line 125 instance-of v0, p0, Lcom/alibaba/fastjson/JSONObject; if-eqz v0, :cond_b .line 126 check-cast p0, Lcom/alibaba/fastjson/JSONObject; return-object p0 .line 129 :cond_b invoke-static {p0}, Lcom/alibaba/fastjson/JSON;->toJSON(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 check-cast v0, Lcom/alibaba/fastjson/JSONObject; .line 130 sget v1, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I sget-object v2, Lcom/alibaba/fastjson/parser/Feature;->SupportAutoType:Lcom/alibaba/fastjson/parser/Feature; iget v2, v2, Lcom/alibaba/fastjson/parser/Feature;->mask:I and-int/2addr v1, v2 const/4 v2, 0x0 const/4 v3, 0x1 if-eqz v1, :cond_1e move v1, v3 goto :goto_1f :cond_1e move v1, v2 :goto_1f if-nez v1, :cond_2e .line 132 array-length v4, p1 :goto_22 if-ge v2, v4, :cond_2e aget-object v5, p1, v2 .line 133 sget-object v6, Lcom/alibaba/fastjson/parser/Feature;->SupportAutoType:Lcom/alibaba/fastjson/parser/Feature; if-ne v5, v6, :cond_2b move v1, v3 :cond_2b add-int/lit8 v2, v2, 0x1 goto :goto_22 :cond_2e if-eqz v1, :cond_3d .line 140 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object p0 invoke-virtual {p0}, Ljava/lang/Class;->getName()Ljava/lang/String; move-result-object p0 const-string p1, "@type" invoke-virtual {v0, p1, p0}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object; :cond_3d return-object v0 .end method .method public static final varargs parseObject(Ljava/lang/String;Lcom/alibaba/fastjson/TypeReference;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 5 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Lcom/alibaba/fastjson/TypeReference<", "TT;>;[", "Lcom/alibaba/fastjson/parser/Feature;", ")TT;" } .end annotation .line 164 iget-object p1, p1, Lcom/alibaba/fastjson/TypeReference;->type:Ljava/lang/reflect/Type; sget-object v0, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; sget v1, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I invoke-static {p0, p1, v0, v1, p2}, Lcom/alibaba/fastjson/JSON;->parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;Lcom/alibaba/fastjson/parser/ParserConfig;I[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final parseObject(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; .registers 3 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/Class<", "TT;>;)TT;" } .end annotation const/4 v0, 0x0 .line 278 new-array v0, v0, [Lcom/alibaba/fastjson/parser/Feature; invoke-static {p0, p1, v0}, Lcom/alibaba/fastjson/JSON;->parseObject(Ljava/lang/String;Ljava/lang/Class;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final varargs parseObject(Ljava/lang/String;Ljava/lang/Class;Lcom/alibaba/fastjson/parser/deserializer/ParseProcess;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 10 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/Class<", "TT;>;", "Lcom/alibaba/fastjson/parser/deserializer/ParseProcess;", "[", "Lcom/alibaba/fastjson/parser/Feature;", ")TT;" } .end annotation .line 174 sget-object v2, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; sget v4, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I move-object v0, p0 move-object v1, p1 move-object v3, p2 move-object v5, p3 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;Lcom/alibaba/fastjson/parser/ParserConfig;Lcom/alibaba/fastjson/parser/deserializer/ParseProcess;I[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final varargs parseObject(Ljava/lang/String;Ljava/lang/Class;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 5 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/Class<", "TT;>;[", "Lcom/alibaba/fastjson/parser/Feature;", ")TT;" } .end annotation .line 169 sget-object v0, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; sget v1, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I invoke-static {p0, p1, v0, v1, p2}, Lcom/alibaba/fastjson/JSON;->parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;Lcom/alibaba/fastjson/parser/ParserConfig;I[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final varargs parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;I[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 7 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/reflect/Type;", "I[", "Lcom/alibaba/fastjson/parser/Feature;", ")TT;" } .end annotation if-nez p0, :cond_4 const/4 p0, 0x0 return-object p0 .line 194 :cond_4 array-length v0, p3 const/4 v1, 0x0 :goto_6 if-ge v1, v0, :cond_10 aget-object v2, p3, v1 .line 195 iget v2, v2, Lcom/alibaba/fastjson/parser/Feature;->mask:I or-int/2addr p2, v2 add-int/lit8 v1, v1, 0x1 goto :goto_6 .line 198 :cond_10 new-instance p3, Lcom/alibaba/fastjson/parser/DefaultJSONParser; sget-object v0, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; invoke-direct {p3, p0, v0, p2}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;I)V .line 199 invoke-virtual {p3, p1}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parseObject(Ljava/lang/reflect/Type;)Ljava/lang/Object; move-result-object p0 .line 201 invoke-virtual {p3, p0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->handleResovleTask(Ljava/lang/Object;)V .line 203 invoke-virtual {p3}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->close()V return-object p0 .end method .method public static final varargs parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;Lcom/alibaba/fastjson/parser/ParserConfig;I[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 11 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/reflect/Type;", "Lcom/alibaba/fastjson/parser/ParserConfig;", "I[", "Lcom/alibaba/fastjson/parser/Feature;", ")TT;" } .end annotation const/4 v3, 0x0 move-object v0, p0 move-object v1, p1 move-object v2, p2 move v4, p3 move-object v5, p4 .line 210 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;Lcom/alibaba/fastjson/parser/ParserConfig;Lcom/alibaba/fastjson/parser/deserializer/ParseProcess;I[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final varargs parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;Lcom/alibaba/fastjson/parser/ParserConfig;Lcom/alibaba/fastjson/parser/deserializer/ParseProcess;I[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 9 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/reflect/Type;", "Lcom/alibaba/fastjson/parser/ParserConfig;", "Lcom/alibaba/fastjson/parser/deserializer/ParseProcess;", "I[", "Lcom/alibaba/fastjson/parser/Feature;", ")TT;" } .end annotation if-nez p0, :cond_4 const/4 p0, 0x0 return-object p0 .line 220 :cond_4 array-length v0, p5 const/4 v1, 0x0 :goto_6 if-ge v1, v0, :cond_10 aget-object v2, p5, v1 .line 221 iget v2, v2, Lcom/alibaba/fastjson/parser/Feature;->mask:I or-int/2addr p4, v2 add-int/lit8 v1, v1, 0x1 goto :goto_6 .line 224 :cond_10 new-instance p5, Lcom/alibaba/fastjson/parser/DefaultJSONParser; invoke-direct {p5, p0, p2, p4}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->(Ljava/lang/String;Lcom/alibaba/fastjson/parser/ParserConfig;I)V .line 226 instance-of p0, p3, Lcom/alibaba/fastjson/parser/deserializer/ExtraTypeProvider; if-eqz p0, :cond_23 .line 227 invoke-virtual {p5}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->getExtraTypeProviders()Ljava/util/List; move-result-object p0 move-object p2, p3 check-cast p2, Lcom/alibaba/fastjson/parser/deserializer/ExtraTypeProvider; invoke-interface {p0, p2}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 230 :cond_23 instance-of p0, p3, Lcom/alibaba/fastjson/parser/deserializer/ExtraProcessor; if-eqz p0, :cond_31 .line 231 invoke-virtual {p5}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->getExtraProcessors()Ljava/util/List; move-result-object p0 move-object p2, p3 check-cast p2, Lcom/alibaba/fastjson/parser/deserializer/ExtraProcessor; invoke-interface {p0, p2}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 234 :cond_31 instance-of p0, p3, Lcom/alibaba/fastjson/parser/deserializer/FieldTypeResolver; if-eqz p0, :cond_39 .line 235 check-cast p3, Lcom/alibaba/fastjson/parser/deserializer/FieldTypeResolver; iput-object p3, p5, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->fieldTypeResolver:Lcom/alibaba/fastjson/parser/deserializer/FieldTypeResolver; .line 238 :cond_39 invoke-virtual {p5, p1}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parseObject(Ljava/lang/reflect/Type;)Ljava/lang/Object; move-result-object p0 .line 240 invoke-virtual {p5, p0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->handleResovleTask(Ljava/lang/Object;)V .line 242 invoke-virtual {p5}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->close()V return-object p0 .end method .method public static final varargs parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;Lcom/alibaba/fastjson/parser/deserializer/ParseProcess;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 10 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/reflect/Type;", "Lcom/alibaba/fastjson/parser/deserializer/ParseProcess;", "[", "Lcom/alibaba/fastjson/parser/Feature;", ")TT;" } .end annotation .line 185 sget-object v2, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; sget v4, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I move-object v0, p0 move-object v1, p1 move-object v3, p2 move-object v5, p3 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;Lcom/alibaba/fastjson/parser/ParserConfig;Lcom/alibaba/fastjson/parser/deserializer/ParseProcess;I[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final varargs parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 5 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/String;", "Ljava/lang/reflect/Type;", "[", "Lcom/alibaba/fastjson/parser/Feature;", ")TT;" } .end annotation .line 180 sget-object v0, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; sget v1, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I invoke-static {p0, p1, v0, v1, p2}, Lcom/alibaba/fastjson/JSON;->parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;Lcom/alibaba/fastjson/parser/ParserConfig;I[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final varargs parseObject([BLjava/lang/reflect/Type;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 5 .annotation system Ldalvik/annotation/Signature; value = { "([B", "Ljava/lang/reflect/Type;", "[", "Lcom/alibaba/fastjson/parser/Feature;", ")TT;" } .end annotation .line 250 :try_start_0 new-instance v0, Ljava/lang/String; const-string v1, "UTF-8" invoke-direct {v0, p0, v1}, Ljava/lang/String;->([BLjava/lang/String;)V invoke-static {v0, p1, p2}, Lcom/alibaba/fastjson/JSON;->parseObject(Ljava/lang/String;Ljava/lang/reflect/Type;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; move-result-object p0 :try_end_b .catch Ljava/io/UnsupportedEncodingException; {:try_start_0 .. :try_end_b} :catch_c return-object p0 .line 252 :catch_c new-instance p0, Lcom/alibaba/fastjson/JSONException; const-string p1, "UTF-8 not support" invoke-direct {p0, p1}, Lcom/alibaba/fastjson/JSONException;->(Ljava/lang/String;)V throw p0 .end method .method public static final varargs parseObject([CILjava/lang/reflect/Type;[Lcom/alibaba/fastjson/parser/Feature;)Ljava/lang/Object; .registers 8 .annotation system Ldalvik/annotation/Signature; value = { "([CI", "Ljava/lang/reflect/Type;", "[", "Lcom/alibaba/fastjson/parser/Feature;", ")TT;" } .end annotation if-eqz p0, :cond_26 .line 258 array-length v0, p0 if-nez v0, :cond_6 goto :goto_26 .line 262 :cond_6 sget v0, Lcom/alibaba/fastjson/JSON;->DEFAULT_PARSER_FEATURE:I .line 263 array-length v1, p3 const/4 v2, 0x0 :goto_a if-ge v2, v1, :cond_14 aget-object v3, p3, v2 .line 264 iget v3, v3, Lcom/alibaba/fastjson/parser/Feature;->mask:I or-int/2addr v0, v3 add-int/lit8 v2, v2, 0x1 goto :goto_a .line 267 :cond_14 new-instance p3, Lcom/alibaba/fastjson/parser/DefaultJSONParser; sget-object v1, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; invoke-direct {p3, p0, p1, v1, v0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->([CILcom/alibaba/fastjson/parser/ParserConfig;I)V .line 268 invoke-virtual {p3, p2}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->parseObject(Ljava/lang/reflect/Type;)Ljava/lang/Object; move-result-object p0 .line 270 invoke-virtual {p3, p0}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->handleResovleTask(Ljava/lang/Object;)V .line 272 invoke-virtual {p3}, Lcom/alibaba/fastjson/parser/DefaultJSONParser;->close()V return-object p0 :cond_26 :goto_26 const/4 p0, 0x0 return-object p0 .end method .method public static final toJSON(Ljava/lang/Object;)Ljava/lang/Object; .registers 2 .line 530 sget-object v0, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; invoke-static {p0, v0}, Lcom/alibaba/fastjson/JSON;->toJSON(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final toJSON(Ljava/lang/Object;Lcom/alibaba/fastjson/parser/ParserConfig;)Ljava/lang/Object; .registers 2 .annotation runtime Ljava/lang/Deprecated; .end annotation .line 535 sget-object p1, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; invoke-static {p0, p1}, Lcom/alibaba/fastjson/JSON;->toJSON(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static toJSON(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;)Ljava/lang/Object; .registers 5 const/4 v0, 0x0 if-nez p0, :cond_4 return-object v0 .line 544 :cond_4 instance-of v1, p0, Lcom/alibaba/fastjson/JSON; if-eqz v1, :cond_b .line 545 check-cast p0, Lcom/alibaba/fastjson/JSON; return-object p0 .line 548 :cond_b instance-of v1, p0, Ljava/util/Map; if-eqz v1, :cond_5c .line 549 check-cast p0, Ljava/util/Map; .line 551 invoke-interface {p0}, Ljava/util/Map;->size()I move-result p1 .line 554 instance-of v0, p0, Ljava/util/LinkedHashMap; if-eqz v0, :cond_1f .line 555 new-instance v0, Ljava/util/LinkedHashMap; invoke-direct {v0, p1}, Ljava/util/LinkedHashMap;->(I)V goto :goto_2e .line 556 :cond_1f instance-of v0, p0, Ljava/util/TreeMap; if-eqz v0, :cond_29 .line 557 new-instance v0, Ljava/util/TreeMap; invoke-direct {v0}, Ljava/util/TreeMap;->()V goto :goto_2e .line 559 :cond_29 new-instance v0, Ljava/util/HashMap; invoke-direct {v0, p1}, Ljava/util/HashMap;->(I)V .line 561 :goto_2e new-instance p1, Lcom/alibaba/fastjson/JSONObject; invoke-direct {p1, v0}, Lcom/alibaba/fastjson/JSONObject;->(Ljava/util/Map;)V .line 563 invoke-interface {p0}, Ljava/util/Map;->entrySet()Ljava/util/Set; move-result-object p0 invoke-interface {p0}, Ljava/util/Set;->iterator()Ljava/util/Iterator; move-result-object p0 :goto_3b invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result v0 if-eqz v0, :cond_5b invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v0 check-cast v0, Ljava/util/Map$Entry; .line 564 invoke-interface {v0}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object; move-result-object v1 .line 565 invoke-static {v1}, Lcom/alibaba/fastjson/util/TypeUtils;->castToString(Ljava/lang/Object;)Ljava/lang/String; move-result-object v1 .line 566 invoke-interface {v0}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object; move-result-object v0 invoke-static {v0}, Lcom/alibaba/fastjson/JSON;->toJSON(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 .line 567 invoke-virtual {p1, v1, v0}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object; goto :goto_3b :cond_5b return-object p1 .line 573 :cond_5c instance-of v1, p0, Ljava/util/Collection; if-eqz v1, :cond_82 .line 574 check-cast p0, Ljava/util/Collection; .line 576 new-instance p1, Lcom/alibaba/fastjson/JSONArray; invoke-interface {p0}, Ljava/util/Collection;->size()I move-result v0 invoke-direct {p1, v0}, Lcom/alibaba/fastjson/JSONArray;->(I)V .line 578 invoke-interface {p0}, Ljava/util/Collection;->iterator()Ljava/util/Iterator; move-result-object p0 :goto_6f invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result v0 if-eqz v0, :cond_81 invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object v0 .line 579 invoke-static {v0}, Lcom/alibaba/fastjson/JSON;->toJSON(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v0 .line 580 invoke-virtual {p1, v0}, Lcom/alibaba/fastjson/JSONArray;->add(Ljava/lang/Object;)Z goto :goto_6f :cond_81 return-object p1 .line 586 :cond_82 invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class; move-result-object v1 .line 588 invoke-virtual {v1}, Ljava/lang/Class;->isEnum()Z move-result v2 if-eqz v2, :cond_93 .line 589 check-cast p0, Ljava/lang/Enum; invoke-virtual {p0}, Ljava/lang/Enum;->name()Ljava/lang/String; move-result-object p0 return-object p0 .line 592 :cond_93 invoke-virtual {v1}, Ljava/lang/Class;->isArray()Z move-result v2 if-eqz v2, :cond_b4 .line 593 invoke-static {p0}, Ljava/lang/reflect/Array;->getLength(Ljava/lang/Object;)I move-result p1 .line 595 new-instance v0, Lcom/alibaba/fastjson/JSONArray; invoke-direct {v0, p1}, Lcom/alibaba/fastjson/JSONArray;->(I)V const/4 v1, 0x0 :goto_a3 if-ge v1, p1, :cond_b3 .line 598 invoke-static {p0, v1}, Ljava/lang/reflect/Array;->get(Ljava/lang/Object;I)Ljava/lang/Object; move-result-object v2 .line 599 invoke-static {v2}, Lcom/alibaba/fastjson/JSON;->toJSON(Ljava/lang/Object;)Ljava/lang/Object; move-result-object v2 .line 600 invoke-virtual {v0, v2}, Lcom/alibaba/fastjson/JSONArray;->add(Ljava/lang/Object;)Z add-int/lit8 v1, v1, 0x1 goto :goto_a3 :cond_b3 return-object v0 .line 606 :cond_b4 invoke-static {v1}, Lcom/alibaba/fastjson/parser/ParserConfig;->isPrimitive(Ljava/lang/Class;)Z move-result v2 if-eqz v2, :cond_bb return-object p0 .line 610 :cond_bb invoke-virtual {p1, v1}, Lcom/alibaba/fastjson/serializer/SerializeConfig;->get(Ljava/lang/Class;)Lcom/alibaba/fastjson/serializer/ObjectSerializer; move-result-object p1 .line 611 instance-of v1, p1, Lcom/alibaba/fastjson/serializer/JavaBeanSerializer; if-eqz v1, :cond_fe .line 612 check-cast p1, Lcom/alibaba/fastjson/serializer/JavaBeanSerializer; .line 614 new-instance v0, Lcom/alibaba/fastjson/JSONObject; invoke-direct {v0}, Lcom/alibaba/fastjson/JSONObject;->()V .line 616 :try_start_ca invoke-virtual {p1, p0}, Lcom/alibaba/fastjson/serializer/JavaBeanSerializer;->getFieldValuesMap(Ljava/lang/Object;)Ljava/util/Map; move-result-object p0 .line 617 invoke-interface {p0}, Ljava/util/Map;->entrySet()Ljava/util/Set; move-result-object p0 invoke-interface {p0}, Ljava/util/Set;->iterator()Ljava/util/Iterator; move-result-object p0 :goto_d6 invoke-interface {p0}, Ljava/util/Iterator;->hasNext()Z move-result p1 if-eqz p1, :cond_f4 invoke-interface {p0}, Ljava/util/Iterator;->next()Ljava/lang/Object; move-result-object p1 check-cast p1, Ljava/util/Map$Entry; .line 618 invoke-interface {p1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object; move-result-object v1 check-cast v1, Ljava/lang/String; invoke-interface {p1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object; move-result-object p1 invoke-static {p1}, Lcom/alibaba/fastjson/JSON;->toJSON(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 invoke-virtual {v0, v1, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object; :try_end_f3 .catch Ljava/lang/Exception; {:try_start_ca .. :try_end_f3} :catch_f5 goto :goto_d6 :cond_f4 return-object v0 :catch_f5 move-exception p0 .line 621 new-instance p1, Lcom/alibaba/fastjson/JSONException; const-string v0, "toJSON error" invoke-direct {p1, v0, p0}, Lcom/alibaba/fastjson/JSONException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw p1 :cond_fe return-object v0 .end method .method public static final varargs toJSONBytes(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)[B .registers 6 .line 467 new-instance v0, Lcom/alibaba/fastjson/serializer/SerializeWriter; const/4 v1, 0x0 move-object v2, v1 check-cast v2, Ljava/io/Writer; sget v2, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I invoke-direct {v0, v1, v2, p2}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->(Ljava/io/Writer;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)V .line 470 :try_start_b new-instance p2, Lcom/alibaba/fastjson/serializer/JSONSerializer; invoke-direct {p2, v0, p1}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->(Lcom/alibaba/fastjson/serializer/SerializeWriter;Lcom/alibaba/fastjson/serializer/SerializeConfig;)V .line 471 invoke-virtual {p2, p0}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->write(Ljava/lang/Object;)V .line 473 const-string p0, "UTF-8" invoke-virtual {v0, p0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->toBytes(Ljava/lang/String;)[B move-result-object p0 :try_end_19 .catchall {:try_start_b .. :try_end_19} :catchall_1d .line 475 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V return-object p0 :catchall_1d move-exception p0 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V throw p0 .end method .method public static final varargs toJSONBytes(Ljava/lang/Object;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)[B .registers 5 .line 435 new-instance v0, Lcom/alibaba/fastjson/serializer/SerializeWriter; const/4 v1, 0x0 move-object v2, v1 check-cast v2, Ljava/io/Writer; sget v2, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I invoke-direct {v0, v1, v2, p1}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->(Ljava/io/Writer;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)V .line 438 :try_start_b new-instance p1, Lcom/alibaba/fastjson/serializer/JSONSerializer; sget-object v1, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; invoke-direct {p1, v0, v1}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->(Lcom/alibaba/fastjson/serializer/SerializeWriter;Lcom/alibaba/fastjson/serializer/SerializeConfig;)V .line 440 invoke-virtual {p1, p0}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->write(Ljava/lang/Object;)V .line 442 const-string p0, "UTF-8" invoke-virtual {v0, p0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->toBytes(Ljava/lang/String;)[B move-result-object p0 :try_end_1b .catchall {:try_start_b .. :try_end_1b} :catchall_1f .line 444 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V return-object p0 :catchall_1f move-exception p0 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V throw p0 .end method .method public static final toJSONString(Ljava/lang/Object;)Ljava/lang/String; .registers 7 .line 404 sget-object v1, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; sget v4, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I const/4 v0, 0x0 new-array v5, v0, [Lcom/alibaba/fastjson/serializer/SerializerFeature; const/4 v2, 0x0 const/4 v3, 0x0 move-object v0, p0 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;Ljava/lang/String;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static final varargs toJSONString(Ljava/lang/Object;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; .registers 9 .line 415 sget-object v1, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; const/4 v2, 0x0 const/4 v3, 0x0 move-object v0, p0 move v4, p1 move-object v5, p2 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;Ljava/lang/String;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static final varargs toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;Lcom/alibaba/fastjson/serializer/SerializeFilter;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; .registers 11 const/4 v0, 0x1 .line 454 new-array v3, v0, [Lcom/alibaba/fastjson/serializer/SerializeFilter; const/4 v0, 0x0 aput-object p2, v3, v0 const/4 v4, 0x0 sget v5, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I move-object v1, p0 move-object v2, p1 move-object v6, p3 invoke-static/range {v1 .. v6}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;Ljava/lang/String;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static varargs toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;Ljava/lang/String;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; .registers 11 .line 650 new-instance v0, Lcom/alibaba/fastjson/serializer/SerializeWriter; const/4 v1, 0x0 invoke-direct {v0, v1, p4, p5}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->(Ljava/io/Writer;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)V .line 653 :try_start_6 new-instance p4, Lcom/alibaba/fastjson/serializer/JSONSerializer; invoke-direct {p4, v0, p1}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->(Lcom/alibaba/fastjson/serializer/SerializeWriter;Lcom/alibaba/fastjson/serializer/SerializeConfig;)V .line 654 array-length p1, p5 const/4 v1, 0x0 move v2, v1 :goto_e const/4 v3, 0x1 if-ge v2, p1, :cond_19 aget-object v4, p5, v2 .line 655 invoke-virtual {p4, v4, v3}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->config(Lcom/alibaba/fastjson/serializer/SerializerFeature;Z)V add-int/lit8 v2, v2, 0x1 goto :goto_e :cond_19 if-eqz p3, :cond_29 .line 658 invoke-virtual {p3}, Ljava/lang/String;->length()I move-result p1 if-eqz p1, :cond_29 .line 659 invoke-virtual {p4, p3}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->setDateFormat(Ljava/lang/String;)V .line 660 sget-object p1, Lcom/alibaba/fastjson/serializer/SerializerFeature;->WriteDateUseDateFormat:Lcom/alibaba/fastjson/serializer/SerializerFeature; invoke-virtual {p4, p1, v3}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->config(Lcom/alibaba/fastjson/serializer/SerializerFeature;Z)V :cond_29 if-eqz p2, :cond_89 .line 664 array-length p1, p2 :goto_2c if-ge v1, p1, :cond_89 aget-object p3, p2, v1 if-nez p3, :cond_33 goto :goto_86 .line 669 :cond_33 instance-of p5, p3, Lcom/alibaba/fastjson/serializer/PropertyPreFilter; if-eqz p5, :cond_41 .line 670 invoke-virtual {p4}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->getPropertyPreFilters()Ljava/util/List; move-result-object p5 move-object v2, p3 check-cast v2, Lcom/alibaba/fastjson/serializer/PropertyPreFilter; invoke-interface {p5, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 673 :cond_41 instance-of p5, p3, Lcom/alibaba/fastjson/serializer/NameFilter; if-eqz p5, :cond_4f .line 674 invoke-virtual {p4}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->getNameFilters()Ljava/util/List; move-result-object p5 move-object v2, p3 check-cast v2, Lcom/alibaba/fastjson/serializer/NameFilter; invoke-interface {p5, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 677 :cond_4f instance-of p5, p3, Lcom/alibaba/fastjson/serializer/ValueFilter; if-eqz p5, :cond_5d .line 678 invoke-virtual {p4}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->getValueFilters()Ljava/util/List; move-result-object p5 move-object v2, p3 check-cast v2, Lcom/alibaba/fastjson/serializer/ValueFilter; invoke-interface {p5, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 681 :cond_5d instance-of p5, p3, Lcom/alibaba/fastjson/serializer/PropertyFilter; if-eqz p5, :cond_6b .line 682 invoke-virtual {p4}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->getPropertyFilters()Ljava/util/List; move-result-object p5 move-object v2, p3 check-cast v2, Lcom/alibaba/fastjson/serializer/PropertyFilter; invoke-interface {p5, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 685 :cond_6b instance-of p5, p3, Lcom/alibaba/fastjson/serializer/BeforeFilter; if-eqz p5, :cond_79 .line 686 invoke-virtual {p4}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->getBeforeFilters()Ljava/util/List; move-result-object p5 move-object v2, p3 check-cast v2, Lcom/alibaba/fastjson/serializer/BeforeFilter; invoke-interface {p5, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 689 :cond_79 instance-of p5, p3, Lcom/alibaba/fastjson/serializer/AfterFilter; if-eqz p5, :cond_86 .line 690 invoke-virtual {p4}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->getAfterFilters()Ljava/util/List; move-result-object p5 check-cast p3, Lcom/alibaba/fastjson/serializer/AfterFilter; invoke-interface {p5, p3}, Ljava/util/List;->add(Ljava/lang/Object;)Z :cond_86 :goto_86 add-int/lit8 v1, v1, 0x1 goto :goto_2c .line 695 :cond_89 invoke-virtual {p4, p0}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->write(Ljava/lang/Object;)V .line 697 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->toString()Ljava/lang/String; move-result-object p0 :try_end_90 .catchall {:try_start_6 .. :try_end_90} :catchall_94 .line 699 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V return-object p0 :catchall_94 move-exception p0 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V throw p0 .end method .method public static final varargs toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; .registers 10 const/4 v3, 0x0 .line 459 sget v4, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I move-object v0, p0 move-object v1, p1 move-object v2, p2 move-object v5, p3 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;Ljava/lang/String;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static final varargs toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; .registers 9 const/4 v3, 0x0 .line 449 sget v4, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I const/4 v2, 0x0 move-object v0, p0 move-object v1, p1 move-object v5, p2 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;Ljava/lang/String;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static final varargs toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeFilter;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; .registers 9 .line 427 sget-object v1, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; const/4 v0, 0x1 new-array v2, v0, [Lcom/alibaba/fastjson/serializer/SerializeFilter; const/4 v0, 0x0 aput-object p1, v2, v0 const/4 v3, 0x0 sget v4, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I move-object v0, p0 move-object v5, p2 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;Ljava/lang/String;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static final toJSONString(Ljava/lang/Object;Z)Ljava/lang/String; .registers 4 if-nez p1, :cond_7 .line 481 invoke-static {p0}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;)Ljava/lang/String; move-result-object p0 return-object p0 :cond_7 const/4 p1, 0x1 .line 484 new-array p1, p1, [Lcom/alibaba/fastjson/serializer/SerializerFeature; const/4 v0, 0x0 sget-object v1, Lcom/alibaba/fastjson/serializer/SerializerFeature;->PrettyFormat:Lcom/alibaba/fastjson/serializer/SerializerFeature; aput-object v1, p1, v0 invoke-static {p0, p1}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static final varargs toJSONString(Ljava/lang/Object;[Lcom/alibaba/fastjson/serializer/SerializeFilter;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; .registers 9 .line 431 sget-object v1, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; const/4 v3, 0x0 sget v4, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I move-object v0, p0 move-object v2, p1 move-object v5, p2 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;Ljava/lang/String;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static final varargs toJSONString(Ljava/lang/Object;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; .registers 3 .line 411 sget v0, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I invoke-static {p0, v0, p1}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static final varargs toJSONStringWithDateFormat(Ljava/lang/Object;Ljava/lang/String;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; .registers 9 .line 423 sget-object v1, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; const/4 v2, 0x0 sget v4, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I move-object v0, p0 move-object v3, p1 move-object v5, p2 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;Ljava/lang/String;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static final varargs toJSONStringZ(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; .registers 9 .line 463 sget-object v1, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; const/4 v3, 0x0 const/4 v4, 0x0 const/4 v2, 0x0 move-object v0, p0 move-object v5, p2 invoke-static/range {v0 .. v5}, Lcom/alibaba/fastjson/JSON;->toJSONString(Ljava/lang/Object;Lcom/alibaba/fastjson/serializer/SerializeConfig;[Lcom/alibaba/fastjson/serializer/SerializeFilter;Ljava/lang/String;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public static final toJavaObject(Lcom/alibaba/fastjson/JSON;Ljava/lang/Class;)Ljava/lang/Object; .registers 3 .annotation system Ldalvik/annotation/Signature; value = { "(", "Lcom/alibaba/fastjson/JSON;", "Ljava/lang/Class<", "TT;>;)TT;" } .end annotation .line 630 sget-object v0, Lcom/alibaba/fastjson/parser/ParserConfig;->global:Lcom/alibaba/fastjson/parser/ParserConfig; invoke-static {p0, p1, v0}, Lcom/alibaba/fastjson/util/TypeUtils;->cast(Ljava/lang/Object;Ljava/lang/Class;Lcom/alibaba/fastjson/parser/ParserConfig;)Ljava/lang/Object; move-result-object p0 return-object p0 .end method .method public static final varargs writeJSONStringTo(Ljava/lang/Object;Ljava/io/Writer;[Lcom/alibaba/fastjson/serializer/SerializerFeature;)V .registers 5 .line 488 new-instance v0, Lcom/alibaba/fastjson/serializer/SerializeWriter; sget v1, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I invoke-direct {v0, p1, v1, p2}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->(Ljava/io/Writer;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)V .line 491 :try_start_7 new-instance p1, Lcom/alibaba/fastjson/serializer/JSONSerializer; sget-object p2, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; invoke-direct {p1, v0, p2}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->(Lcom/alibaba/fastjson/serializer/SerializeWriter;Lcom/alibaba/fastjson/serializer/SerializeConfig;)V .line 493 invoke-virtual {p1, p0}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->write(Ljava/lang/Object;)V :try_end_11 .catchall {:try_start_7 .. :try_end_11} :catchall_15 .line 495 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V return-void :catchall_15 move-exception p0 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V throw p0 .end method # virtual methods .method public toJSONString()Ljava/lang/String; .registers 5 .line 506 new-instance v0, Lcom/alibaba/fastjson/serializer/SerializeWriter; const/4 v1, 0x0 move-object v2, v1 check-cast v2, Ljava/io/Writer; sget v2, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I sget-object v3, Lcom/alibaba/fastjson/serializer/SerializerFeature;->EMPTY:[Lcom/alibaba/fastjson/serializer/SerializerFeature; invoke-direct {v0, v1, v2, v3}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->(Ljava/io/Writer;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)V .line 508 :try_start_d new-instance v1, Lcom/alibaba/fastjson/serializer/JSONSerializer; sget-object v2, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; invoke-direct {v1, v0, v2}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->(Lcom/alibaba/fastjson/serializer/SerializeWriter;Lcom/alibaba/fastjson/serializer/SerializeConfig;)V .line 509 invoke-virtual {v1, p0}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->write(Ljava/lang/Object;)V .line 510 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->toString()Ljava/lang/String; move-result-object v1 :try_end_1b .catchall {:try_start_d .. :try_end_1b} :catchall_1f .line 512 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V return-object v1 :catchall_1f move-exception v1 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V throw v1 .end method .method public toJavaObject(Ljava/lang/Class;)Ljava/lang/Object; .registers 3 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/lang/Class<", "TT;>;)TT;" } .end annotation .line 637 invoke-static {}, Lcom/alibaba/fastjson/parser/ParserConfig;->getGlobalInstance()Lcom/alibaba/fastjson/parser/ParserConfig; move-result-object v0 invoke-static {p0, p1, v0}, Lcom/alibaba/fastjson/util/TypeUtils;->cast(Ljava/lang/Object;Ljava/lang/Class;Lcom/alibaba/fastjson/parser/ParserConfig;)Ljava/lang/Object; move-result-object p1 return-object p1 .end method .method public toString()Ljava/lang/String; .registers 2 .line 502 invoke-virtual {p0}, Lcom/alibaba/fastjson/JSON;->toJSONString()Ljava/lang/String; move-result-object v0 return-object v0 .end method .method public writeJSONString(Ljava/lang/Appendable;)V .registers 6 .line 517 new-instance v0, Lcom/alibaba/fastjson/serializer/SerializeWriter; const/4 v1, 0x0 move-object v2, v1 check-cast v2, Ljava/io/Writer; sget v2, Lcom/alibaba/fastjson/JSON;->DEFAULT_GENERATE_FEATURE:I sget-object v3, Lcom/alibaba/fastjson/serializer/SerializerFeature;->EMPTY:[Lcom/alibaba/fastjson/serializer/SerializerFeature; invoke-direct {v0, v1, v2, v3}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->(Ljava/io/Writer;I[Lcom/alibaba/fastjson/serializer/SerializerFeature;)V .line 519 :try_start_d new-instance v1, Lcom/alibaba/fastjson/serializer/JSONSerializer; sget-object v2, Lcom/alibaba/fastjson/serializer/SerializeConfig;->globalInstance:Lcom/alibaba/fastjson/serializer/SerializeConfig; invoke-direct {v1, v0, v2}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->(Lcom/alibaba/fastjson/serializer/SerializeWriter;Lcom/alibaba/fastjson/serializer/SerializeConfig;)V invoke-virtual {v1, p0}, Lcom/alibaba/fastjson/serializer/JSONSerializer;->write(Ljava/lang/Object;)V .line 520 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->toString()Ljava/lang/String; move-result-object v1 invoke-interface {p1, v1}, Ljava/lang/Appendable;->append(Ljava/lang/CharSequence;)Ljava/lang/Appendable; :try_end_1e .catch Ljava/io/IOException; {:try_start_d .. :try_end_1e} :catch_24 .catchall {:try_start_d .. :try_end_1e} :catchall_22 .line 524 invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V return-void :catchall_22 move-exception p1 goto :goto_2f :catch_24 move-exception p1 .line 522 :try_start_25 new-instance v1, Lcom/alibaba/fastjson/JSONException; invoke-virtual {p1}, Ljava/io/IOException;->getMessage()Ljava/lang/String; move-result-object v2 invoke-direct {v1, v2, p1}, Lcom/alibaba/fastjson/JSONException;->(Ljava/lang/String;Ljava/lang/Throwable;)V throw v1 :try_end_2f .catchall {:try_start_25 .. :try_end_2f} :catchall_22 .line 524 :goto_2f invoke-virtual {v0}, Lcom/alibaba/fastjson/serializer/SerializeWriter;->close()V throw p1 .end method