public final class com.google.gson.Gson
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.google.gson.Gson
super_class: java.lang.Object
{
static final boolean DEFAULT_JSON_NON_EXECUTABLE;
descriptor: Z
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final boolean DEFAULT_LENIENT;
descriptor: Z
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final boolean DEFAULT_PRETTY_PRINT;
descriptor: Z
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final boolean DEFAULT_ESCAPE_HTML;
descriptor: Z
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 1
static final boolean DEFAULT_SERIALIZE_NULLS;
descriptor: Z
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final boolean DEFAULT_COMPLEX_MAP_KEYS;
descriptor: Z
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
static final boolean DEFAULT_SPECIALIZE_FLOAT_VALUES;
descriptor: Z
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final com.google.gson.reflect.TypeToken<?> NULL_KEY_SURROGATE;
descriptor: Lcom/google/gson/reflect/TypeToken;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Lcom/google/gson/reflect/TypeToken<*>;
private static final java.lang.String JSON_NON_EXECUTABLE_PREFIX;
descriptor: Ljava/lang/String;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: ")]}'\n"
private final java.lang.ThreadLocal<java.util.Map<com.google.gson.reflect.TypeToken<?>, com.google.gson.Gson$FutureTypeAdapter<?>>> calls;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Ljava/util/Map<Lcom/google/gson/reflect/TypeToken<*>;Lcom/google/gson/Gson$FutureTypeAdapter<*>;>;>;
private final java.util.Map<com.google.gson.reflect.TypeToken<?>, com.google.gson.TypeAdapter<?>> typeTokenCache;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Lcom/google/gson/reflect/TypeToken<*>;Lcom/google/gson/TypeAdapter<*>;>;
private final com.google.gson.internal.ConstructorConstructor constructorConstructor;
descriptor: Lcom/google/gson/internal/ConstructorConstructor;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.google.gson.internal.bind.JsonAdapterAnnotationTypeAdapterFactory jsonAdapterFactory;
descriptor: Lcom/google/gson/internal/bind/JsonAdapterAnnotationTypeAdapterFactory;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
final java.util.List<com.google.gson.TypeAdapterFactory> factories;
descriptor: Ljava/util/List;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/List<Lcom/google/gson/TypeAdapterFactory;>;
final com.google.gson.internal.Excluder excluder;
descriptor: Lcom/google/gson/internal/Excluder;
flags: (0x0010) ACC_FINAL
final com.google.gson.FieldNamingStrategy fieldNamingStrategy;
descriptor: Lcom/google/gson/FieldNamingStrategy;
flags: (0x0010) ACC_FINAL
final java.util.Map<java.lang.reflect.Type, com.google.gson.InstanceCreator<?>> instanceCreators;
descriptor: Ljava/util/Map;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/reflect/Type;Lcom/google/gson/InstanceCreator<*>;>;
final boolean serializeNulls;
descriptor: Z
flags: (0x0010) ACC_FINAL
final boolean complexMapKeySerialization;
descriptor: Z
flags: (0x0010) ACC_FINAL
final boolean generateNonExecutableJson;
descriptor: Z
flags: (0x0010) ACC_FINAL
final boolean htmlSafe;
descriptor: Z
flags: (0x0010) ACC_FINAL
final boolean prettyPrinting;
descriptor: Z
flags: (0x0010) ACC_FINAL
final boolean lenient;
descriptor: Z
flags: (0x0010) ACC_FINAL
final boolean serializeSpecialFloatingPointValues;
descriptor: Z
flags: (0x0010) ACC_FINAL
final java.lang.String datePattern;
descriptor: Ljava/lang/String;
flags: (0x0010) ACC_FINAL
final int dateStyle;
descriptor: I
flags: (0x0010) ACC_FINAL
final int timeStyle;
descriptor: I
flags: (0x0010) ACC_FINAL
final com.google.gson.LongSerializationPolicy longSerializationPolicy;
descriptor: Lcom/google/gson/LongSerializationPolicy;
flags: (0x0010) ACC_FINAL
final java.util.List<com.google.gson.TypeAdapterFactory> builderFactories;
descriptor: Ljava/util/List;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/List<Lcom/google/gson/TypeAdapterFactory;>;
final java.util.List<com.google.gson.TypeAdapterFactory> builderHierarchyFactories;
descriptor: Ljava/util/List;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/List<Lcom/google/gson/TypeAdapterFactory;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Ljava/lang/Object;
invokestatic com.google.gson.reflect.TypeToken.get:(Ljava/lang/Class;)Lcom/google/gson/reflect/TypeToken;
putstatic com.google.gson.Gson.NULL_KEY_SURROGATE:Lcom/google/gson/reflect/TypeToken;
1: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=18, locals=1, args_size=1
start local 0 0: aload 0
getstatic com.google.gson.internal.Excluder.DEFAULT:Lcom/google/gson/internal/Excluder;
getstatic com.google.gson.FieldNamingPolicy.IDENTITY:Lcom/google/gson/FieldNamingPolicy;
1: invokestatic java.util.Collections.emptyMap:()Ljava/util/Map;
iconst_0
2: iconst_0
iconst_0
iconst_1
3: iconst_0
iconst_0
iconst_0
4: getstatic com.google.gson.LongSerializationPolicy.DEFAULT:Lcom/google/gson/LongSerializationPolicy;
aconst_null
iconst_2
iconst_2
5: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokestatic java.util.Collections.emptyList:()Ljava/util/List;
6: invokestatic java.util.Collections.emptyList:()Ljava/util/List;
invokespecial com.google.gson.Gson.<init>:(Lcom/google/gson/internal/Excluder;Lcom/google/gson/FieldNamingStrategy;Ljava/util/Map;ZZZZZZZLcom/google/gson/LongSerializationPolicy;Ljava/lang/String;IILjava/util/List;Ljava/util/List;Ljava/util/List;)V
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/google/gson/Gson;
void <init>(com.google.gson.internal.Excluder, com.google.gson.FieldNamingStrategy, java.util.Map<java.lang.reflect.Type, com.google.gson.InstanceCreator<?>>, boolean, boolean, boolean, boolean, boolean, boolean, boolean, com.google.gson.LongSerializationPolicy, java.lang.String, int, int, java.util.List<com.google.gson.TypeAdapterFactory>, java.util.List<com.google.gson.TypeAdapterFactory>, java.util.List<com.google.gson.TypeAdapterFactory>);
descriptor: (Lcom/google/gson/internal/Excluder;Lcom/google/gson/FieldNamingStrategy;Ljava/util/Map;ZZZZZZZLcom/google/gson/LongSerializationPolicy;Ljava/lang/String;IILjava/util/List;Ljava/util/List;Ljava/util/List;)V
flags: (0x0000)
Code:
stack=7, locals=20, args_size=18
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 start local 9 start local 10 start local 11 start local 12 start local 13 start local 14 start local 15 start local 16 start local 17 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
2: new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
putfield com.google.gson.Gson.calls:Ljava/lang/ThreadLocal;
3: aload 0
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putfield com.google.gson.Gson.typeTokenCache:Ljava/util/Map;
4: aload 0
aload 1
putfield com.google.gson.Gson.excluder:Lcom/google/gson/internal/Excluder;
5: aload 0
aload 2
putfield com.google.gson.Gson.fieldNamingStrategy:Lcom/google/gson/FieldNamingStrategy;
6: aload 0
aload 3
putfield com.google.gson.Gson.instanceCreators:Ljava/util/Map;
7: aload 0
new com.google.gson.internal.ConstructorConstructor
dup
aload 3
invokespecial com.google.gson.internal.ConstructorConstructor.<init>:(Ljava/util/Map;)V
putfield com.google.gson.Gson.constructorConstructor:Lcom/google/gson/internal/ConstructorConstructor;
8: aload 0
iload 4
putfield com.google.gson.Gson.serializeNulls:Z
9: aload 0
iload 5
putfield com.google.gson.Gson.complexMapKeySerialization:Z
10: aload 0
iload 6
putfield com.google.gson.Gson.generateNonExecutableJson:Z
11: aload 0
iload 7
putfield com.google.gson.Gson.htmlSafe:Z
12: aload 0
iload 8
putfield com.google.gson.Gson.prettyPrinting:Z
13: aload 0
iload 9
putfield com.google.gson.Gson.lenient:Z
14: aload 0
iload 10
putfield com.google.gson.Gson.serializeSpecialFloatingPointValues:Z
15: aload 0
aload 11
putfield com.google.gson.Gson.longSerializationPolicy:Lcom/google/gson/LongSerializationPolicy;
16: aload 0
aload 12
putfield com.google.gson.Gson.datePattern:Ljava/lang/String;
17: aload 0
iload 13
putfield com.google.gson.Gson.dateStyle:I
18: aload 0
iload 14
putfield com.google.gson.Gson.timeStyle:I
19: aload 0
aload 15
putfield com.google.gson.Gson.builderFactories:Ljava/util/List;
20: aload 0
aload 16
putfield com.google.gson.Gson.builderHierarchyFactories:Ljava/util/List;
21: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 18
start local 18 22: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.JSON_ELEMENT_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
23: aload 18
getstatic com.google.gson.internal.bind.ObjectTypeAdapter.FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
24: aload 18
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
25: aload 18
aload 17
invokeinterface java.util.List.addAll:(Ljava/util/Collection;)Z
pop
26: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.STRING_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
27: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.INTEGER_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
28: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.BOOLEAN_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
29: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.BYTE_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
30: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.SHORT_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
31: aload 11
invokestatic com.google.gson.Gson.longAdapter:(Lcom/google/gson/LongSerializationPolicy;)Lcom/google/gson/TypeAdapter;
astore 19
start local 19 32: aload 18
getstatic java.lang.Long.TYPE:Ljava/lang/Class;
ldc Ljava/lang/Long;
aload 19
invokestatic com.google.gson.internal.bind.TypeAdapters.newFactory:(Ljava/lang/Class;Ljava/lang/Class;Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
33: aload 18
getstatic java.lang.Double.TYPE:Ljava/lang/Class;
ldc Ljava/lang/Double;
34: aload 0
iload 10
invokevirtual com.google.gson.Gson.doubleAdapter:(Z)Lcom/google/gson/TypeAdapter;
35: invokestatic com.google.gson.internal.bind.TypeAdapters.newFactory:(Ljava/lang/Class;Ljava/lang/Class;Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
36: aload 18
getstatic java.lang.Float.TYPE:Ljava/lang/Class;
ldc Ljava/lang/Float;
37: aload 0
iload 10
invokevirtual com.google.gson.Gson.floatAdapter:(Z)Lcom/google/gson/TypeAdapter;
38: invokestatic com.google.gson.internal.bind.TypeAdapters.newFactory:(Ljava/lang/Class;Ljava/lang/Class;Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
39: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.NUMBER_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
40: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.ATOMIC_INTEGER_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
41: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.ATOMIC_BOOLEAN_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
42: aload 18
ldc Ljava/util/concurrent/atomic/AtomicLong;
aload 19
invokestatic com.google.gson.Gson.atomicLongAdapter:(Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapter;
invokestatic com.google.gson.internal.bind.TypeAdapters.newFactory:(Ljava/lang/Class;Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
43: aload 18
ldc Ljava/util/concurrent/atomic/AtomicLongArray;
aload 19
invokestatic com.google.gson.Gson.atomicLongArrayAdapter:(Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapter;
invokestatic com.google.gson.internal.bind.TypeAdapters.newFactory:(Ljava/lang/Class;Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
44: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.ATOMIC_INTEGER_ARRAY_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
45: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.CHARACTER_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
46: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.STRING_BUILDER_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
47: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.STRING_BUFFER_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
48: aload 18
ldc Ljava/math/BigDecimal;
getstatic com.google.gson.internal.bind.TypeAdapters.BIG_DECIMAL:Lcom/google/gson/TypeAdapter;
invokestatic com.google.gson.internal.bind.TypeAdapters.newFactory:(Ljava/lang/Class;Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
49: aload 18
ldc Ljava/math/BigInteger;
getstatic com.google.gson.internal.bind.TypeAdapters.BIG_INTEGER:Lcom/google/gson/TypeAdapter;
invokestatic com.google.gson.internal.bind.TypeAdapters.newFactory:(Ljava/lang/Class;Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
50: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.URL_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
51: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.URI_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
52: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.UUID_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
53: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.CURRENCY_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
54: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.LOCALE_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
55: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.INET_ADDRESS_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
56: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.BIT_SET_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
57: aload 18
getstatic com.google.gson.internal.bind.DateTypeAdapter.FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
58: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.CALENDAR_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
59: aload 18
getstatic com.google.gson.internal.bind.TimeTypeAdapter.FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
60: aload 18
getstatic com.google.gson.internal.bind.SqlDateTypeAdapter.FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
61: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.TIMESTAMP_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
62: aload 18
getstatic com.google.gson.internal.bind.ArrayTypeAdapter.FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
63: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.CLASS_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
64: aload 18
new com.google.gson.internal.bind.CollectionTypeAdapterFactory
dup
aload 0
getfield com.google.gson.Gson.constructorConstructor:Lcom/google/gson/internal/ConstructorConstructor;
invokespecial com.google.gson.internal.bind.CollectionTypeAdapterFactory.<init>:(Lcom/google/gson/internal/ConstructorConstructor;)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
65: aload 18
new com.google.gson.internal.bind.MapTypeAdapterFactory
dup
aload 0
getfield com.google.gson.Gson.constructorConstructor:Lcom/google/gson/internal/ConstructorConstructor;
iload 5
invokespecial com.google.gson.internal.bind.MapTypeAdapterFactory.<init>:(Lcom/google/gson/internal/ConstructorConstructor;Z)V
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
66: aload 0
new com.google.gson.internal.bind.JsonAdapterAnnotationTypeAdapterFactory
dup
aload 0
getfield com.google.gson.Gson.constructorConstructor:Lcom/google/gson/internal/ConstructorConstructor;
invokespecial com.google.gson.internal.bind.JsonAdapterAnnotationTypeAdapterFactory.<init>:(Lcom/google/gson/internal/ConstructorConstructor;)V
putfield com.google.gson.Gson.jsonAdapterFactory:Lcom/google/gson/internal/bind/JsonAdapterAnnotationTypeAdapterFactory;
67: aload 18
aload 0
getfield com.google.gson.Gson.jsonAdapterFactory:Lcom/google/gson/internal/bind/JsonAdapterAnnotationTypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
68: aload 18
getstatic com.google.gson.internal.bind.TypeAdapters.ENUM_FACTORY:Lcom/google/gson/TypeAdapterFactory;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
69: aload 18
new com.google.gson.internal.bind.ReflectiveTypeAdapterFactory
dup
70: aload 0
getfield com.google.gson.Gson.constructorConstructor:Lcom/google/gson/internal/ConstructorConstructor;
aload 2
aload 1
aload 0
getfield com.google.gson.Gson.jsonAdapterFactory:Lcom/google/gson/internal/bind/JsonAdapterAnnotationTypeAdapterFactory;
invokespecial com.google.gson.internal.bind.ReflectiveTypeAdapterFactory.<init>:(Lcom/google/gson/internal/ConstructorConstructor;Lcom/google/gson/FieldNamingStrategy;Lcom/google/gson/internal/Excluder;Lcom/google/gson/internal/bind/JsonAdapterAnnotationTypeAdapterFactory;)V
71: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
72: aload 0
aload 18
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
putfield com.google.gson.Gson.factories:Ljava/util/List;
73: return
end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 74 0 this Lcom/google/gson/Gson;
0 74 1 excluder Lcom/google/gson/internal/Excluder;
0 74 2 fieldNamingStrategy Lcom/google/gson/FieldNamingStrategy;
0 74 3 instanceCreators Ljava/util/Map<Ljava/lang/reflect/Type;Lcom/google/gson/InstanceCreator<*>;>;
0 74 4 serializeNulls Z
0 74 5 complexMapKeySerialization Z
0 74 6 generateNonExecutableGson Z
0 74 7 htmlSafe Z
0 74 8 prettyPrinting Z
0 74 9 lenient Z
0 74 10 serializeSpecialFloatingPointValues Z
0 74 11 longSerializationPolicy Lcom/google/gson/LongSerializationPolicy;
0 74 12 datePattern Ljava/lang/String;
0 74 13 dateStyle I
0 74 14 timeStyle I
0 74 15 builderFactories Ljava/util/List<Lcom/google/gson/TypeAdapterFactory;>;
0 74 16 builderHierarchyFactories Ljava/util/List<Lcom/google/gson/TypeAdapterFactory;>;
0 74 17 factoriesToBeAdded Ljava/util/List<Lcom/google/gson/TypeAdapterFactory;>;
22 74 18 factories Ljava/util/List<Lcom/google/gson/TypeAdapterFactory;>;
32 74 19 longAdapter Lcom/google/gson/TypeAdapter<Ljava/lang/Number;>;
Signature: (Lcom/google/gson/internal/Excluder;Lcom/google/gson/FieldNamingStrategy;Ljava/util/Map<Ljava/lang/reflect/Type;Lcom/google/gson/InstanceCreator<*>;>;ZZZZZZZLcom/google/gson/LongSerializationPolicy;Ljava/lang/String;IILjava/util/List<Lcom/google/gson/TypeAdapterFactory;>;Ljava/util/List<Lcom/google/gson/TypeAdapterFactory;>;Ljava/util/List<Lcom/google/gson/TypeAdapterFactory;>;)V
MethodParameters:
Name Flags
excluder
fieldNamingStrategy
instanceCreators
serializeNulls
complexMapKeySerialization
generateNonExecutableGson
htmlSafe
prettyPrinting
lenient
serializeSpecialFloatingPointValues
longSerializationPolicy
datePattern
dateStyle
timeStyle
builderFactories
builderHierarchyFactories
factoriesToBeAdded
public com.google.gson.GsonBuilder newBuilder();
descriptor: ()Lcom/google/gson/GsonBuilder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.google.gson.GsonBuilder
dup
aload 0
invokespecial com.google.gson.GsonBuilder.<init>:(Lcom/google/gson/Gson;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/Gson;
public com.google.gson.internal.Excluder excluder();
descriptor: ()Lcom/google/gson/internal/Excluder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.gson.Gson.excluder:Lcom/google/gson/internal/Excluder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/Gson;
public com.google.gson.FieldNamingStrategy fieldNamingStrategy();
descriptor: ()Lcom/google/gson/FieldNamingStrategy;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.gson.Gson.fieldNamingStrategy:Lcom/google/gson/FieldNamingStrategy;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/Gson;
public boolean serializeNulls();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.gson.Gson.serializeNulls:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/Gson;
public boolean htmlSafe();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.gson.Gson.htmlSafe:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/Gson;
private com.google.gson.TypeAdapter<java.lang.Number> doubleAdapter(boolean);
descriptor: (Z)Lcom/google/gson/TypeAdapter;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 2
1: getstatic com.google.gson.internal.bind.TypeAdapters.DOUBLE:Lcom/google/gson/TypeAdapter;
areturn
2: StackMap locals:
StackMap stack:
new com.google.gson.Gson$1
dup
aload 0
invokespecial com.google.gson.Gson$1.<init>:(Lcom/google/gson/Gson;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/gson/Gson;
0 3 1 serializeSpecialFloatingPointValues Z
Signature: (Z)Lcom/google/gson/TypeAdapter<Ljava/lang/Number;>;
MethodParameters:
Name Flags
serializeSpecialFloatingPointValues
private com.google.gson.TypeAdapter<java.lang.Number> floatAdapter(boolean);
descriptor: (Z)Lcom/google/gson/TypeAdapter;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 2
1: getstatic com.google.gson.internal.bind.TypeAdapters.FLOAT:Lcom/google/gson/TypeAdapter;
areturn
2: StackMap locals:
StackMap stack:
new com.google.gson.Gson$2
dup
aload 0
invokespecial com.google.gson.Gson$2.<init>:(Lcom/google/gson/Gson;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/gson/Gson;
0 3 1 serializeSpecialFloatingPointValues Z
Signature: (Z)Lcom/google/gson/TypeAdapter<Ljava/lang/Number;>;
MethodParameters:
Name Flags
serializeSpecialFloatingPointValues
static void checkValidFloatingPoint(double);
descriptor: (D)V
flags: (0x0008) ACC_STATIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: dload 0
invokestatic java.lang.Double.isNaN:(D)Z
ifne 1
dload 0
invokestatic java.lang.Double.isInfinite:(D)Z
ifeq 5
1: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
dload 0
invokestatic java.lang.String.valueOf:(D)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: ldc " is not a valid double value as per JSON specification. To override this"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: ldc " behavior, use GsonBuilder.serializeSpecialFloatingPointValues() method."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 value D
MethodParameters:
Name Flags
value
private static com.google.gson.TypeAdapter<java.lang.Number> longAdapter(com.google.gson.LongSerializationPolicy);
descriptor: (Lcom/google/gson/LongSerializationPolicy;)Lcom/google/gson/TypeAdapter;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic com.google.gson.LongSerializationPolicy.DEFAULT:Lcom/google/gson/LongSerializationPolicy;
if_acmpne 2
1: getstatic com.google.gson.internal.bind.TypeAdapters.LONG:Lcom/google/gson/TypeAdapter;
areturn
2: StackMap locals:
StackMap stack:
new com.google.gson.Gson$3
dup
invokespecial com.google.gson.Gson$3.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 longSerializationPolicy Lcom/google/gson/LongSerializationPolicy;
Signature: (Lcom/google/gson/LongSerializationPolicy;)Lcom/google/gson/TypeAdapter<Ljava/lang/Number;>;
MethodParameters:
Name Flags
longSerializationPolicy
private static com.google.gson.TypeAdapter<java.util.concurrent.atomic.AtomicLong> atomicLongAdapter(com.google.gson.TypeAdapter<java.lang.Number>);
descriptor: (Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapter;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.google.gson.Gson$4
dup
aload 0
invokespecial com.google.gson.Gson$4.<init>:(Lcom/google/gson/TypeAdapter;)V
1: invokevirtual com.google.gson.Gson$4.nullSafe:()Lcom/google/gson/TypeAdapter;
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 longAdapter Lcom/google/gson/TypeAdapter<Ljava/lang/Number;>;
Signature: (Lcom/google/gson/TypeAdapter<Ljava/lang/Number;>;)Lcom/google/gson/TypeAdapter<Ljava/util/concurrent/atomic/AtomicLong;>;
MethodParameters:
Name Flags
longAdapter final
private static com.google.gson.TypeAdapter<java.util.concurrent.atomic.AtomicLongArray> atomicLongArrayAdapter(com.google.gson.TypeAdapter<java.lang.Number>);
descriptor: (Lcom/google/gson/TypeAdapter;)Lcom/google/gson/TypeAdapter;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.google.gson.Gson$5
dup
aload 0
invokespecial com.google.gson.Gson$5.<init>:(Lcom/google/gson/TypeAdapter;)V
1: invokevirtual com.google.gson.Gson$5.nullSafe:()Lcom/google/gson/TypeAdapter;
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 longAdapter Lcom/google/gson/TypeAdapter<Ljava/lang/Number;>;
Signature: (Lcom/google/gson/TypeAdapter<Ljava/lang/Number;>;)Lcom/google/gson/TypeAdapter<Ljava/util/concurrent/atomic/AtomicLongArray;>;
MethodParameters:
Name Flags
longAdapter final
public <T> com.google.gson.TypeAdapter<T> getAdapter(com.google.gson.reflect.TypeToken<T>);
descriptor: (Lcom/google/gson/reflect/TypeToken;)Lcom/google/gson/TypeAdapter;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=12, args_size=2
start local 0 start local 1 0: aload 0
getfield com.google.gson.Gson.typeTokenCache:Ljava/util/Map;
aload 1
ifnonnull 1
getstatic com.google.gson.Gson.NULL_KEY_SURROGATE:Lcom/google/gson/reflect/TypeToken;
goto 2
StackMap locals:
StackMap stack: java.util.Map
1: aload 1
StackMap locals: com.google.gson.Gson com.google.gson.reflect.TypeToken
StackMap stack: java.util.Map com.google.gson.reflect.TypeToken
2: invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.google.gson.TypeAdapter
astore 2
start local 2 3: aload 2
ifnull 5
4: aload 2
areturn
5: StackMap locals: com.google.gson.TypeAdapter
StackMap stack:
aload 0
getfield com.google.gson.Gson.calls:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.util.Map
astore 3
start local 3 6: iconst_0
istore 4
start local 4 7: aload 3
ifnonnull 11
8: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
astore 3
9: aload 0
getfield com.google.gson.Gson.calls:Ljava/lang/ThreadLocal;
aload 3
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
10: iconst_1
istore 4
11: StackMap locals: java.util.Map int
StackMap stack:
aload 3
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.google.gson.Gson$FutureTypeAdapter
astore 5
start local 5 12: aload 5
ifnull 14
13: aload 5
areturn
14: StackMap locals: com.google.gson.Gson$FutureTypeAdapter
StackMap stack:
new com.google.gson.Gson$FutureTypeAdapter
dup
invokespecial com.google.gson.Gson$FutureTypeAdapter.<init>:()V
astore 6
start local 6 15: aload 3
aload 1
aload 6
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
16: aload 0
getfield com.google.gson.Gson.factories:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 27
StackMap locals: com.google.gson.Gson com.google.gson.reflect.TypeToken com.google.gson.TypeAdapter java.util.Map int com.google.gson.Gson$FutureTypeAdapter com.google.gson.Gson$FutureTypeAdapter top java.util.Iterator
StackMap stack:
17: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.google.gson.TypeAdapterFactory
astore 7
start local 7 18: aload 7
aload 0
aload 1
invokeinterface com.google.gson.TypeAdapterFactory.create:(Lcom/google/gson/Gson;Lcom/google/gson/reflect/TypeToken;)Lcom/google/gson/TypeAdapter;
astore 9
start local 9 19: aload 9
ifnull 27
20: aload 6
aload 9
invokevirtual com.google.gson.Gson$FutureTypeAdapter.setDelegate:(Lcom/google/gson/TypeAdapter;)V
21: aload 0
getfield com.google.gson.Gson.typeTokenCache:Ljava/util/Map;
aload 1
aload 9
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
22: aload 9
astore 11
23: aload 3
aload 1
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
24: iload 4
ifeq 26
25: aload 0
getfield com.google.gson.Gson.calls:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
26: StackMap locals: com.google.gson.Gson com.google.gson.reflect.TypeToken com.google.gson.TypeAdapter java.util.Map int com.google.gson.Gson$FutureTypeAdapter com.google.gson.Gson$FutureTypeAdapter com.google.gson.TypeAdapterFactory java.util.Iterator com.google.gson.TypeAdapter top com.google.gson.TypeAdapter
StackMap stack:
aload 11
areturn
end local 9 end local 7 27: StackMap locals: com.google.gson.Gson com.google.gson.reflect.TypeToken com.google.gson.TypeAdapter java.util.Map int com.google.gson.Gson$FutureTypeAdapter com.google.gson.Gson$FutureTypeAdapter top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 17
28: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "GSON (2.8.6) cannot handle "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 6 29: StackMap locals: com.google.gson.Gson com.google.gson.reflect.TypeToken com.google.gson.TypeAdapter java.util.Map int com.google.gson.Gson$FutureTypeAdapter
StackMap stack: java.lang.Throwable
astore 10
30: aload 3
aload 1
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
31: iload 4
ifeq 33
32: aload 0
getfield com.google.gson.Gson.calls:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
33: StackMap locals: com.google.gson.Gson com.google.gson.reflect.TypeToken com.google.gson.TypeAdapter java.util.Map int com.google.gson.Gson$FutureTypeAdapter top top top top java.lang.Throwable
StackMap stack:
aload 10
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lcom/google/gson/Gson;
0 34 1 type Lcom/google/gson/reflect/TypeToken<TT;>;
3 34 2 cached Lcom/google/gson/TypeAdapter<*>;
6 34 3 threadCalls Ljava/util/Map<Lcom/google/gson/reflect/TypeToken<*>;Lcom/google/gson/Gson$FutureTypeAdapter<*>;>;
7 34 4 requiresThreadLocalCleanup Z
12 34 5 ongoingCall Lcom/google/gson/Gson$FutureTypeAdapter<TT;>;
15 29 6 call Lcom/google/gson/Gson$FutureTypeAdapter<TT;>;
18 27 7 factory Lcom/google/gson/TypeAdapterFactory;
19 27 9 candidate Lcom/google/gson/TypeAdapter<TT;>;
Exception table:
from to target type
14 23 29 any
27 29 29 any
Signature: <T:Ljava/lang/Object;>(Lcom/google/gson/reflect/TypeToken<TT;>;)Lcom/google/gson/TypeAdapter<TT;>;
MethodParameters:
Name Flags
type
public <T> com.google.gson.TypeAdapter<T> getDelegateAdapter(com.google.gson.TypeAdapterFactory, com.google.gson.reflect.TypeToken<T>);
descriptor: (Lcom/google/gson/TypeAdapterFactory;Lcom/google/gson/reflect/TypeToken;)Lcom/google/gson/TypeAdapter;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield com.google.gson.Gson.factories:Ljava/util/List;
aload 1
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 2
1: aload 0
getfield com.google.gson.Gson.jsonAdapterFactory:Lcom/google/gson/internal/bind/JsonAdapterAnnotationTypeAdapterFactory;
astore 1
2: StackMap locals:
StackMap stack:
iconst_0
istore 3
start local 3 3: aload 0
getfield com.google.gson.Gson.factories:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 5
goto 12
StackMap locals: com.google.gson.Gson com.google.gson.TypeAdapterFactory com.google.gson.reflect.TypeToken int top java.util.Iterator
StackMap stack:
4: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.google.gson.TypeAdapterFactory
astore 4
start local 4 5: iload 3
ifne 9
6: aload 4
aload 1
if_acmpne 12
7: iconst_1
istore 3
8: goto 12
9: StackMap locals: com.google.gson.Gson com.google.gson.TypeAdapterFactory com.google.gson.reflect.TypeToken int com.google.gson.TypeAdapterFactory java.util.Iterator
StackMap stack:
aload 4
aload 0
aload 2
invokeinterface com.google.gson.TypeAdapterFactory.create:(Lcom/google/gson/Gson;Lcom/google/gson/reflect/TypeToken;)Lcom/google/gson/TypeAdapter;
astore 6
start local 6 10: aload 6
ifnull 12
11: aload 6
areturn
end local 6 end local 4 12: StackMap locals: com.google.gson.Gson com.google.gson.TypeAdapterFactory com.google.gson.reflect.TypeToken int top java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
13: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "GSON cannot serialize "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lcom/google/gson/Gson;
0 14 1 skipPast Lcom/google/gson/TypeAdapterFactory;
0 14 2 type Lcom/google/gson/reflect/TypeToken<TT;>;
3 14 3 skipPastFound Z
5 12 4 factory Lcom/google/gson/TypeAdapterFactory;
10 12 6 candidate Lcom/google/gson/TypeAdapter<TT;>;
Signature: <T:Ljava/lang/Object;>(Lcom/google/gson/TypeAdapterFactory;Lcom/google/gson/reflect/TypeToken<TT;>;)Lcom/google/gson/TypeAdapter<TT;>;
MethodParameters:
Name Flags
skipPast
type
public <T> com.google.gson.TypeAdapter<T> getAdapter(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lcom/google/gson/TypeAdapter;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.google.gson.reflect.TypeToken.get:(Ljava/lang/Class;)Lcom/google/gson/reflect/TypeToken;
invokevirtual com.google.gson.Gson.getAdapter:(Lcom/google/gson/reflect/TypeToken;)Lcom/google/gson/TypeAdapter;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/Gson;
0 1 1 type Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Lcom/google/gson/TypeAdapter<TT;>;
MethodParameters:
Name Flags
type
public com.google.gson.JsonElement toJsonTree(java.lang.Object);
descriptor: (Ljava/lang/Object;)Lcom/google/gson/JsonElement;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: getstatic com.google.gson.JsonNull.INSTANCE:Lcom/google/gson/JsonNull;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual com.google.gson.Gson.toJsonTree:(Ljava/lang/Object;Ljava/lang/reflect/Type;)Lcom/google/gson/JsonElement;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/gson/Gson;
0 3 1 src Ljava/lang/Object;
MethodParameters:
Name Flags
src
public com.google.gson.JsonElement toJsonTree(java.lang.Object, java.lang.reflect.Type);
descriptor: (Ljava/lang/Object;Ljava/lang/reflect/Type;)Lcom/google/gson/JsonElement;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new com.google.gson.internal.bind.JsonTreeWriter
dup
invokespecial com.google.gson.internal.bind.JsonTreeWriter.<init>:()V
astore 3
start local 3 1: aload 0
aload 1
aload 2
aload 3
invokevirtual com.google.gson.Gson.toJson:(Ljava/lang/Object;Ljava/lang/reflect/Type;Lcom/google/gson/stream/JsonWriter;)V
2: aload 3
invokevirtual com.google.gson.internal.bind.JsonTreeWriter.get:()Lcom/google/gson/JsonElement;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/gson/Gson;
0 3 1 src Ljava/lang/Object;
0 3 2 typeOfSrc Ljava/lang/reflect/Type;
1 3 3 writer Lcom/google/gson/internal/bind/JsonTreeWriter;
MethodParameters:
Name Flags
src
typeOfSrc
public java.lang.String toJson(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: aload 0
getstatic com.google.gson.JsonNull.INSTANCE:Lcom/google/gson/JsonNull;
invokevirtual com.google.gson.Gson.toJson:(Lcom/google/gson/JsonElement;)Ljava/lang/String;
areturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual com.google.gson.Gson.toJson:(Ljava/lang/Object;Ljava/lang/reflect/Type;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/gson/Gson;
0 3 1 src Ljava/lang/Object;
MethodParameters:
Name Flags
src
public java.lang.String toJson(java.lang.Object, java.lang.reflect.Type);
descriptor: (Ljava/lang/Object;Ljava/lang/reflect/Type;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new java.io.StringWriter
dup
invokespecial java.io.StringWriter.<init>:()V
astore 3
start local 3 1: aload 0
aload 1
aload 2
aload 3
invokevirtual com.google.gson.Gson.toJson:(Ljava/lang/Object;Ljava/lang/reflect/Type;Ljava/lang/Appendable;)V
2: aload 3
invokevirtual java.io.StringWriter.toString:()Ljava/lang/String;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/gson/Gson;
0 3 1 src Ljava/lang/Object;
0 3 2 typeOfSrc Ljava/lang/reflect/Type;
1 3 3 writer Ljava/io/StringWriter;
MethodParameters:
Name Flags
src
typeOfSrc
public void toJson(java.lang.Object, java.lang.Appendable);
descriptor: (Ljava/lang/Object;Ljava/lang/Appendable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnull 3
1: aload 0
aload 1
aload 1
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aload 2
invokevirtual com.google.gson.Gson.toJson:(Ljava/lang/Object;Ljava/lang/reflect/Type;Ljava/lang/Appendable;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
getstatic com.google.gson.JsonNull.INSTANCE:Lcom/google/gson/JsonNull;
aload 2
invokevirtual com.google.gson.Gson.toJson:(Lcom/google/gson/JsonElement;Ljava/lang/Appendable;)V
4: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/google/gson/Gson;
0 5 1 src Ljava/lang/Object;
0 5 2 writer Ljava/lang/Appendable;
Exceptions:
throws com.google.gson.JsonIOException
MethodParameters:
Name Flags
src
writer
public void toJson(java.lang.Object, java.lang.reflect.Type, java.lang.Appendable);
descriptor: (Ljava/lang/Object;Ljava/lang/reflect/Type;Ljava/lang/Appendable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 3
invokestatic com.google.gson.internal.Streams.writerForAppendable:(Ljava/lang/Appendable;)Ljava/io/Writer;
invokevirtual com.google.gson.Gson.newJsonWriter:(Ljava/io/Writer;)Lcom/google/gson/stream/JsonWriter;
astore 4
start local 4 1: aload 0
aload 1
aload 2
aload 4
invokevirtual com.google.gson.Gson.toJson:(Ljava/lang/Object;Ljava/lang/reflect/Type;Lcom/google/gson/stream/JsonWriter;)V
end local 4 2: goto 5
StackMap locals:
StackMap stack: java.io.IOException
3: astore 4
start local 4 4: new com.google.gson.JsonIOException
dup
aload 4
invokespecial com.google.gson.JsonIOException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 4 5: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/google/gson/Gson;
0 6 1 src Ljava/lang/Object;
0 6 2 typeOfSrc Ljava/lang/reflect/Type;
0 6 3 writer Ljava/lang/Appendable;
1 2 4 jsonWriter Lcom/google/gson/stream/JsonWriter;
4 5 4 e Ljava/io/IOException;
Exception table:
from to target type
0 2 3 Class java.io.IOException
Exceptions:
throws com.google.gson.JsonIOException
MethodParameters:
Name Flags
src
typeOfSrc
writer
public void toJson(java.lang.Object, java.lang.reflect.Type, com.google.gson.stream.JsonWriter);
descriptor: (Ljava/lang/Object;Ljava/lang/reflect/Type;Lcom/google/gson/stream/JsonWriter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=11, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 2
invokestatic com.google.gson.reflect.TypeToken.get:(Ljava/lang/reflect/Type;)Lcom/google/gson/reflect/TypeToken;
invokevirtual com.google.gson.Gson.getAdapter:(Lcom/google/gson/reflect/TypeToken;)Lcom/google/gson/TypeAdapter;
astore 4
start local 4 1: aload 3
invokevirtual com.google.gson.stream.JsonWriter.isLenient:()Z
istore 5
start local 5 2: aload 3
iconst_1
invokevirtual com.google.gson.stream.JsonWriter.setLenient:(Z)V
3: aload 3
invokevirtual com.google.gson.stream.JsonWriter.isHtmlSafe:()Z
istore 6
start local 6 4: aload 3
aload 0
getfield com.google.gson.Gson.htmlSafe:Z
invokevirtual com.google.gson.stream.JsonWriter.setHtmlSafe:(Z)V
5: aload 3
invokevirtual com.google.gson.stream.JsonWriter.getSerializeNulls:()Z
istore 7
start local 7 6: aload 3
aload 0
getfield com.google.gson.Gson.serializeNulls:Z
invokevirtual com.google.gson.stream.JsonWriter.setSerializeNulls:(Z)V
7: aload 4
aload 3
aload 1
invokevirtual com.google.gson.TypeAdapter.write:(Lcom/google/gson/stream/JsonWriter;Ljava/lang/Object;)V
8: goto 20
StackMap locals: com.google.gson.Gson java.lang.Object java.lang.reflect.Type com.google.gson.stream.JsonWriter com.google.gson.TypeAdapter int int int
StackMap stack: java.io.IOException
9: astore 8
start local 8 10: new com.google.gson.JsonIOException
dup
aload 8
invokespecial com.google.gson.JsonIOException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 8 11: StackMap locals:
StackMap stack: java.lang.AssertionError
astore 8
start local 8 12: new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "AssertionError (GSON 2.8.6): "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 8
invokevirtual java.lang.AssertionError.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
astore 9
start local 9 13: aload 9
aload 8
invokevirtual java.lang.AssertionError.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
pop
14: aload 9
athrow
end local 9 end local 8 15: StackMap locals:
StackMap stack: java.lang.Throwable
astore 10
16: aload 3
iload 5
invokevirtual com.google.gson.stream.JsonWriter.setLenient:(Z)V
17: aload 3
iload 6
invokevirtual com.google.gson.stream.JsonWriter.setHtmlSafe:(Z)V
18: aload 3
iload 7
invokevirtual com.google.gson.stream.JsonWriter.setSerializeNulls:(Z)V
19: aload 10
athrow
20: StackMap locals:
StackMap stack:
aload 3
iload 5
invokevirtual com.google.gson.stream.JsonWriter.setLenient:(Z)V
21: aload 3
iload 6
invokevirtual com.google.gson.stream.JsonWriter.setHtmlSafe:(Z)V
22: aload 3
iload 7
invokevirtual com.google.gson.stream.JsonWriter.setSerializeNulls:(Z)V
23: return
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lcom/google/gson/Gson;
0 24 1 src Ljava/lang/Object;
0 24 2 typeOfSrc Ljava/lang/reflect/Type;
0 24 3 writer Lcom/google/gson/stream/JsonWriter;
1 24 4 adapter Lcom/google/gson/TypeAdapter<*>;
2 24 5 oldLenient Z
4 24 6 oldHtmlSafe Z
6 24 7 oldSerializeNulls Z
10 11 8 e Ljava/io/IOException;
12 15 8 e Ljava/lang/AssertionError;
13 15 9 error Ljava/lang/AssertionError;
Exception table:
from to target type
7 8 9 Class java.io.IOException
7 8 11 Class java.lang.AssertionError
7 15 15 any
Exceptions:
throws com.google.gson.JsonIOException
MethodParameters:
Name Flags
src
typeOfSrc
writer
public java.lang.String toJson(com.google.gson.JsonElement);
descriptor: (Lcom/google/gson/JsonElement;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new java.io.StringWriter
dup
invokespecial java.io.StringWriter.<init>:()V
astore 2
start local 2 1: aload 0
aload 1
aload 2
invokevirtual com.google.gson.Gson.toJson:(Lcom/google/gson/JsonElement;Ljava/lang/Appendable;)V
2: aload 2
invokevirtual java.io.StringWriter.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/gson/Gson;
0 3 1 jsonElement Lcom/google/gson/JsonElement;
1 3 2 writer Ljava/io/StringWriter;
MethodParameters:
Name Flags
jsonElement
public void toJson(com.google.gson.JsonElement, java.lang.Appendable);
descriptor: (Lcom/google/gson/JsonElement;Ljava/lang/Appendable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 2
invokestatic com.google.gson.internal.Streams.writerForAppendable:(Ljava/lang/Appendable;)Ljava/io/Writer;
invokevirtual com.google.gson.Gson.newJsonWriter:(Ljava/io/Writer;)Lcom/google/gson/stream/JsonWriter;
astore 3
start local 3 1: aload 0
aload 1
aload 3
invokevirtual com.google.gson.Gson.toJson:(Lcom/google/gson/JsonElement;Lcom/google/gson/stream/JsonWriter;)V
end local 3 2: goto 5
StackMap locals:
StackMap stack: java.io.IOException
3: astore 3
start local 3 4: new com.google.gson.JsonIOException
dup
aload 3
invokespecial com.google.gson.JsonIOException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/google/gson/Gson;
0 6 1 jsonElement Lcom/google/gson/JsonElement;
0 6 2 writer Ljava/lang/Appendable;
1 2 3 jsonWriter Lcom/google/gson/stream/JsonWriter;
4 5 3 e Ljava/io/IOException;
Exception table:
from to target type
0 2 3 Class java.io.IOException
Exceptions:
throws com.google.gson.JsonIOException
MethodParameters:
Name Flags
jsonElement
writer
public com.google.gson.stream.JsonWriter newJsonWriter(java.io.Writer);
descriptor: (Ljava/io/Writer;)Lcom/google/gson/stream/JsonWriter;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.google.gson.Gson.generateNonExecutableJson:Z
ifeq 2
1: aload 1
ldc ")]}'\n"
invokevirtual java.io.Writer.write:(Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
new com.google.gson.stream.JsonWriter
dup
aload 1
invokespecial com.google.gson.stream.JsonWriter.<init>:(Ljava/io/Writer;)V
astore 2
start local 2 3: aload 0
getfield com.google.gson.Gson.prettyPrinting:Z
ifeq 5
4: aload 2
ldc " "
invokevirtual com.google.gson.stream.JsonWriter.setIndent:(Ljava/lang/String;)V
5: StackMap locals: com.google.gson.stream.JsonWriter
StackMap stack:
aload 2
aload 0
getfield com.google.gson.Gson.serializeNulls:Z
invokevirtual com.google.gson.stream.JsonWriter.setSerializeNulls:(Z)V
6: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/google/gson/Gson;
0 7 1 writer Ljava/io/Writer;
3 7 2 jsonWriter Lcom/google/gson/stream/JsonWriter;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
writer
public com.google.gson.stream.JsonReader newJsonReader(java.io.Reader);
descriptor: (Ljava/io/Reader;)Lcom/google/gson/stream/JsonReader;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: new com.google.gson.stream.JsonReader
dup
aload 1
invokespecial com.google.gson.stream.JsonReader.<init>:(Ljava/io/Reader;)V
astore 2
start local 2 1: aload 2
aload 0
getfield com.google.gson.Gson.lenient:Z
invokevirtual com.google.gson.stream.JsonReader.setLenient:(Z)V
2: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/gson/Gson;
0 3 1 reader Ljava/io/Reader;
1 3 2 jsonReader Lcom/google/gson/stream/JsonReader;
MethodParameters:
Name Flags
reader
public void toJson(com.google.gson.JsonElement, com.google.gson.stream.JsonWriter);
descriptor: (Lcom/google/gson/JsonElement;Lcom/google/gson/stream/JsonWriter;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.google.gson.stream.JsonWriter.isLenient:()Z
istore 3
start local 3 1: aload 2
iconst_1
invokevirtual com.google.gson.stream.JsonWriter.setLenient:(Z)V
2: aload 2
invokevirtual com.google.gson.stream.JsonWriter.isHtmlSafe:()Z
istore 4
start local 4 3: aload 2
aload 0
getfield com.google.gson.Gson.htmlSafe:Z
invokevirtual com.google.gson.stream.JsonWriter.setHtmlSafe:(Z)V
4: aload 2
invokevirtual com.google.gson.stream.JsonWriter.getSerializeNulls:()Z
istore 5
start local 5 5: aload 2
aload 0
getfield com.google.gson.Gson.serializeNulls:Z
invokevirtual com.google.gson.stream.JsonWriter.setSerializeNulls:(Z)V
6: aload 1
aload 2
invokestatic com.google.gson.internal.Streams.write:(Lcom/google/gson/JsonElement;Lcom/google/gson/stream/JsonWriter;)V
7: goto 19
StackMap locals: com.google.gson.Gson com.google.gson.JsonElement com.google.gson.stream.JsonWriter int int int
StackMap stack: java.io.IOException
8: astore 6
start local 6 9: new com.google.gson.JsonIOException
dup
aload 6
invokespecial com.google.gson.JsonIOException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 6 10: StackMap locals:
StackMap stack: java.lang.AssertionError
astore 6
start local 6 11: new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "AssertionError (GSON 2.8.6): "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.AssertionError.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
astore 7
start local 7 12: aload 7
aload 6
invokevirtual java.lang.AssertionError.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
pop
13: aload 7
athrow
end local 7 end local 6 14: StackMap locals:
StackMap stack: java.lang.Throwable
astore 8
15: aload 2
iload 3
invokevirtual com.google.gson.stream.JsonWriter.setLenient:(Z)V
16: aload 2
iload 4
invokevirtual com.google.gson.stream.JsonWriter.setHtmlSafe:(Z)V
17: aload 2
iload 5
invokevirtual com.google.gson.stream.JsonWriter.setSerializeNulls:(Z)V
18: aload 8
athrow
19: StackMap locals:
StackMap stack:
aload 2
iload 3
invokevirtual com.google.gson.stream.JsonWriter.setLenient:(Z)V
20: aload 2
iload 4
invokevirtual com.google.gson.stream.JsonWriter.setHtmlSafe:(Z)V
21: aload 2
iload 5
invokevirtual com.google.gson.stream.JsonWriter.setSerializeNulls:(Z)V
22: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lcom/google/gson/Gson;
0 23 1 jsonElement Lcom/google/gson/JsonElement;
0 23 2 writer Lcom/google/gson/stream/JsonWriter;
1 23 3 oldLenient Z
3 23 4 oldHtmlSafe Z
5 23 5 oldSerializeNulls Z
9 10 6 e Ljava/io/IOException;
11 14 6 e Ljava/lang/AssertionError;
12 14 7 error Ljava/lang/AssertionError;
Exception table:
from to target type
6 7 8 Class java.io.IOException
6 7 10 Class java.lang.AssertionError
6 14 14 any
Exceptions:
throws com.google.gson.JsonIOException
MethodParameters:
Name Flags
jsonElement
writer
public <T> T fromJson(java.lang.String, java.lang.Class<T>);
descriptor: (Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual com.google.gson.Gson.fromJson:(Ljava/lang/String;Ljava/lang/reflect/Type;)Ljava/lang/Object;
astore 3
start local 3 1: aload 2
invokestatic com.google.gson.internal.Primitives.wrap:(Ljava/lang/Class;)Ljava/lang/Class;
aload 3
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/gson/Gson;
0 2 1 json Ljava/lang/String;
0 2 2 classOfT Ljava/lang/Class<TT;>;
1 2 3 object Ljava/lang/Object;
Exceptions:
throws com.google.gson.JsonSyntaxException
Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
json
classOfT
public <T> T fromJson(java.lang.String, java.lang.reflect.Type);
descriptor: (Ljava/lang/String;Ljava/lang/reflect/Type;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
new java.io.StringReader
dup
aload 1
invokespecial java.io.StringReader.<init>:(Ljava/lang/String;)V
astore 3
start local 3 3: aload 0
aload 3
aload 2
invokevirtual com.google.gson.Gson.fromJson:(Ljava/io/Reader;Ljava/lang/reflect/Type;)Ljava/lang/Object;
astore 4
start local 4 4: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/google/gson/Gson;
0 5 1 json Ljava/lang/String;
0 5 2 typeOfT Ljava/lang/reflect/Type;
3 5 3 reader Ljava/io/StringReader;
4 5 4 target TT;
Exceptions:
throws com.google.gson.JsonSyntaxException
Signature: <T:Ljava/lang/Object;>(Ljava/lang/String;Ljava/lang/reflect/Type;)TT;
MethodParameters:
Name Flags
json
typeOfT
public <T> T fromJson(java.io.Reader, java.lang.Class<T>);
descriptor: (Ljava/io/Reader;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual com.google.gson.Gson.newJsonReader:(Ljava/io/Reader;)Lcom/google/gson/stream/JsonReader;
astore 3
start local 3 1: aload 0
aload 3
aload 2
invokevirtual com.google.gson.Gson.fromJson:(Lcom/google/gson/stream/JsonReader;Ljava/lang/reflect/Type;)Ljava/lang/Object;
astore 4
start local 4 2: aload 4
aload 3
invokestatic com.google.gson.Gson.assertFullConsumption:(Ljava/lang/Object;Lcom/google/gson/stream/JsonReader;)V
3: aload 2
invokestatic com.google.gson.internal.Primitives.wrap:(Ljava/lang/Class;)Ljava/lang/Class;
aload 4
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/google/gson/Gson;
0 4 1 json Ljava/io/Reader;
0 4 2 classOfT Ljava/lang/Class<TT;>;
1 4 3 jsonReader Lcom/google/gson/stream/JsonReader;
2 4 4 object Ljava/lang/Object;
Exceptions:
throws com.google.gson.JsonSyntaxException, com.google.gson.JsonIOException
Signature: <T:Ljava/lang/Object;>(Ljava/io/Reader;Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
json
classOfT
public <T> T fromJson(java.io.Reader, java.lang.reflect.Type);
descriptor: (Ljava/io/Reader;Ljava/lang/reflect/Type;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual com.google.gson.Gson.newJsonReader:(Ljava/io/Reader;)Lcom/google/gson/stream/JsonReader;
astore 3
start local 3 1: aload 0
aload 3
aload 2
invokevirtual com.google.gson.Gson.fromJson:(Lcom/google/gson/stream/JsonReader;Ljava/lang/reflect/Type;)Ljava/lang/Object;
astore 4
start local 4 2: aload 4
aload 3
invokestatic com.google.gson.Gson.assertFullConsumption:(Ljava/lang/Object;Lcom/google/gson/stream/JsonReader;)V
3: aload 4
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/google/gson/Gson;
0 4 1 json Ljava/io/Reader;
0 4 2 typeOfT Ljava/lang/reflect/Type;
1 4 3 jsonReader Lcom/google/gson/stream/JsonReader;
2 4 4 object TT;
Exceptions:
throws com.google.gson.JsonIOException, com.google.gson.JsonSyntaxException
Signature: <T:Ljava/lang/Object;>(Ljava/io/Reader;Ljava/lang/reflect/Type;)TT;
MethodParameters:
Name Flags
json
typeOfT
private static void assertFullConsumption(java.lang.Object, com.google.gson.stream.JsonReader);
descriptor: (Ljava/lang/Object;Lcom/google/gson/stream/JsonReader;)V
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
ifnull 6
aload 1
invokevirtual com.google.gson.stream.JsonReader.peek:()Lcom/google/gson/stream/JsonToken;
getstatic com.google.gson.stream.JsonToken.END_DOCUMENT:Lcom/google/gson/stream/JsonToken;
if_acmpeq 6
1: new com.google.gson.JsonIOException
dup
ldc "JSON document was not fully consumed."
invokespecial com.google.gson.JsonIOException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack: com.google.gson.stream.MalformedJsonException
astore 2
start local 2 3: new com.google.gson.JsonSyntaxException
dup
aload 2
invokespecial com.google.gson.JsonSyntaxException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 4: StackMap locals:
StackMap stack: java.io.IOException
astore 2
start local 2 5: new com.google.gson.JsonIOException
dup
aload 2
invokespecial com.google.gson.JsonIOException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 2 6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 obj Ljava/lang/Object;
0 7 1 reader Lcom/google/gson/stream/JsonReader;
3 4 2 e Lcom/google/gson/stream/MalformedJsonException;
5 6 2 e Ljava/io/IOException;
Exception table:
from to target type
0 2 2 Class com.google.gson.stream.MalformedJsonException
0 2 4 Class java.io.IOException
MethodParameters:
Name Flags
obj
reader
public <T> T fromJson(com.google.gson.stream.JsonReader, java.lang.reflect.Type);
descriptor: (Lcom/google/gson/stream/JsonReader;Ljava/lang/reflect/Type;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=3
start local 0 start local 1 start local 2 0: iconst_1
istore 3
start local 3 1: aload 1
invokevirtual com.google.gson.stream.JsonReader.isLenient:()Z
istore 4
start local 4 2: aload 1
iconst_1
invokevirtual com.google.gson.stream.JsonReader.setLenient:(Z)V
3: aload 1
invokevirtual com.google.gson.stream.JsonReader.peek:()Lcom/google/gson/stream/JsonToken;
pop
4: iconst_0
istore 3
5: aload 2
invokestatic com.google.gson.reflect.TypeToken.get:(Ljava/lang/reflect/Type;)Lcom/google/gson/reflect/TypeToken;
astore 5
start local 5 6: aload 0
aload 5
invokevirtual com.google.gson.Gson.getAdapter:(Lcom/google/gson/reflect/TypeToken;)Lcom/google/gson/TypeAdapter;
astore 6
start local 6 7: aload 6
aload 1
invokevirtual com.google.gson.TypeAdapter.read:(Lcom/google/gson/stream/JsonReader;)Ljava/lang/Object;
astore 7
start local 7 8: aload 7
astore 9
9: aload 1
iload 4
invokevirtual com.google.gson.stream.JsonReader.setLenient:(Z)V
10: aload 9
areturn
end local 7 end local 6 end local 5 11: StackMap locals: com.google.gson.Gson com.google.gson.stream.JsonReader java.lang.reflect.Type int int
StackMap stack: java.io.EOFException
astore 5
start local 5 12: iload 3
ifeq 15
13: aload 1
iload 4
invokevirtual com.google.gson.stream.JsonReader.setLenient:(Z)V
14: aconst_null
areturn
15: StackMap locals: java.io.EOFException
StackMap stack:
new com.google.gson.JsonSyntaxException
dup
aload 5
invokespecial com.google.gson.JsonSyntaxException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 16: StackMap locals: com.google.gson.Gson com.google.gson.stream.JsonReader java.lang.reflect.Type int int
StackMap stack: java.lang.IllegalStateException
astore 5
start local 5 17: new com.google.gson.JsonSyntaxException
dup
aload 5
invokespecial com.google.gson.JsonSyntaxException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 18: StackMap locals:
StackMap stack: java.io.IOException
astore 5
start local 5 19: new com.google.gson.JsonSyntaxException
dup
aload 5
invokespecial com.google.gson.JsonSyntaxException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 20: StackMap locals:
StackMap stack: java.lang.AssertionError
astore 5
start local 5 21: new java.lang.AssertionError
dup
new java.lang.StringBuilder
dup
ldc "AssertionError (GSON 2.8.6): "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 5
invokevirtual java.lang.AssertionError.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
astore 6
start local 6 22: aload 6
aload 5
invokevirtual java.lang.AssertionError.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
pop
23: aload 6
athrow
end local 6 end local 5 24: StackMap locals:
StackMap stack: java.lang.Throwable
astore 8
25: aload 1
iload 4
invokevirtual com.google.gson.stream.JsonReader.setLenient:(Z)V
26: aload 8
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/google/gson/Gson;
0 27 1 reader Lcom/google/gson/stream/JsonReader;
0 27 2 typeOfT Ljava/lang/reflect/Type;
1 27 3 isEmpty Z
2 27 4 oldLenient Z
6 11 5 typeToken Lcom/google/gson/reflect/TypeToken<TT;>;
7 11 6 typeAdapter Lcom/google/gson/TypeAdapter<TT;>;
8 11 7 object TT;
12 16 5 e Ljava/io/EOFException;
17 18 5 e Ljava/lang/IllegalStateException;
19 20 5 e Ljava/io/IOException;
21 24 5 e Ljava/lang/AssertionError;
22 24 6 error Ljava/lang/AssertionError;
Exception table:
from to target type
3 9 11 Class java.io.EOFException
3 9 16 Class java.lang.IllegalStateException
3 9 18 Class java.io.IOException
3 9 20 Class java.lang.AssertionError
3 9 24 any
11 13 24 any
15 24 24 any
Exceptions:
throws com.google.gson.JsonIOException, com.google.gson.JsonSyntaxException
Signature: <T:Ljava/lang/Object;>(Lcom/google/gson/stream/JsonReader;Ljava/lang/reflect/Type;)TT;
MethodParameters:
Name Flags
reader
typeOfT
public <T> T fromJson(com.google.gson.JsonElement, java.lang.Class<T>);
descriptor: (Lcom/google/gson/JsonElement;Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokevirtual com.google.gson.Gson.fromJson:(Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;)Ljava/lang/Object;
astore 3
start local 3 1: aload 2
invokestatic com.google.gson.internal.Primitives.wrap:(Ljava/lang/Class;)Ljava/lang/Class;
aload 3
invokevirtual java.lang.Class.cast:(Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/google/gson/Gson;
0 2 1 json Lcom/google/gson/JsonElement;
0 2 2 classOfT Ljava/lang/Class<TT;>;
1 2 3 object Ljava/lang/Object;
Exceptions:
throws com.google.gson.JsonSyntaxException
Signature: <T:Ljava/lang/Object;>(Lcom/google/gson/JsonElement;Ljava/lang/Class<TT;>;)TT;
MethodParameters:
Name Flags
json
classOfT
public <T> T fromJson(com.google.gson.JsonElement, java.lang.reflect.Type);
descriptor: (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ifnonnull 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
new com.google.gson.internal.bind.JsonTreeReader
dup
aload 1
invokespecial com.google.gson.internal.bind.JsonTreeReader.<init>:(Lcom/google/gson/JsonElement;)V
aload 2
invokevirtual com.google.gson.Gson.fromJson:(Lcom/google/gson/stream/JsonReader;Ljava/lang/reflect/Type;)Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/gson/Gson;
0 3 1 json Lcom/google/gson/JsonElement;
0 3 2 typeOfT Ljava/lang/reflect/Type;
Exceptions:
throws com.google.gson.JsonSyntaxException
Signature: <T:Ljava/lang/Object;>(Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;)TT;
MethodParameters:
Name Flags
json
typeOfT
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "{serializeNulls:"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: aload 0
getfield com.google.gson.Gson.serializeNulls:Z
invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
2: ldc ",factories:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.google.gson.Gson.factories:Ljava/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3: ldc ",instanceCreators:"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield com.google.gson.Gson.constructorConstructor:Lcom/google/gson/internal/ConstructorConstructor;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
4: ldc "}"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
5: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/google/gson/Gson;
}
SourceFile: "Gson.java"
NestMembers:
com.google.gson.Gson$1 com.google.gson.Gson$2 com.google.gson.Gson$3 com.google.gson.Gson$4 com.google.gson.Gson$5 com.google.gson.Gson$FutureTypeAdapter
InnerClasses:
com.google.gson.Gson$1
com.google.gson.Gson$2
com.google.gson.Gson$3
com.google.gson.Gson$4
com.google.gson.Gson$5
FutureTypeAdapter = com.google.gson.Gson$FutureTypeAdapter of com.google.gson.Gson