public class com.google.gson.reflect.TypeToken<T>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.google.gson.reflect.TypeToken
super_class: java.lang.Object
{
final java.lang.Class<? super T> rawType;
descriptor: Ljava/lang/Class;
flags: (0x0010) ACC_FINAL
Signature: Ljava/lang/Class<-TT;>;
final java.lang.reflect.Type type;
descriptor: Ljava/lang/reflect/Type;
flags: (0x0010) ACC_FINAL
final int hashCode;
descriptor: I
flags: (0x0010) ACC_FINAL
protected void <init>();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokestatic com.google.gson.reflect.TypeToken.getSuperclassTypeParameter:(Ljava/lang/Class;)Ljava/lang/reflect/Type;
putfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
2: aload 0
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
invokestatic com.google.gson.internal.$Gson$Types.getRawType:(Ljava/lang/reflect/Type;)Ljava/lang/Class;
putfield com.google.gson.reflect.TypeToken.rawType:Ljava/lang/Class;
3: aload 0
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
invokevirtual java.lang.Object.hashCode:()I
putfield com.google.gson.reflect.TypeToken.hashCode:I
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/google/gson/reflect/TypeToken<TT;>;
void <init>(java.lang.reflect.Type);
descriptor: (Ljava/lang/reflect/Type;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
invokestatic com.google.gson.internal.$Gson$Preconditions.checkNotNull:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.reflect.Type
invokestatic com.google.gson.internal.$Gson$Types.canonicalize:(Ljava/lang/reflect/Type;)Ljava/lang/reflect/Type;
putfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
2: aload 0
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
invokestatic com.google.gson.internal.$Gson$Types.getRawType:(Ljava/lang/reflect/Type;)Ljava/lang/Class;
putfield com.google.gson.reflect.TypeToken.rawType:Ljava/lang/Class;
3: aload 0
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
invokevirtual java.lang.Object.hashCode:()I
putfield com.google.gson.reflect.TypeToken.hashCode:I
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/google/gson/reflect/TypeToken<TT;>;
0 5 1 type Ljava/lang/reflect/Type;
MethodParameters:
Name Flags
type
static java.lang.reflect.Type getSuperclassTypeParameter(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/lang/reflect/Type;
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
invokevirtual java.lang.Class.getGenericSuperclass:()Ljava/lang/reflect/Type;
astore 1
start local 1 1: aload 1
instanceof java.lang.Class
ifeq 3
2: new java.lang.RuntimeException
dup
ldc "Missing type parameter."
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: java.lang.reflect.Type
StackMap stack:
aload 1
checkcast java.lang.reflect.ParameterizedType
astore 2
start local 2 4: aload 2
invokeinterface java.lang.reflect.ParameterizedType.getActualTypeArguments:()[Ljava/lang/reflect/Type;
iconst_0
aaload
invokestatic com.google.gson.internal.$Gson$Types.canonicalize:(Ljava/lang/reflect/Type;)Ljava/lang/reflect/Type;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 subclass Ljava/lang/Class<*>;
1 5 1 superclass Ljava/lang/reflect/Type;
4 5 2 parameterized Ljava/lang/reflect/ParameterizedType;
Signature: (Ljava/lang/Class<*>;)Ljava/lang/reflect/Type;
MethodParameters:
Name Flags
subclass
public final java.lang.Class<? super T> getRawType();
descriptor: ()Ljava/lang/Class;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.gson.reflect.TypeToken.rawType:Ljava/lang/Class;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/reflect/TypeToken<TT;>;
Signature: ()Ljava/lang/Class<-TT;>;
public final java.lang.reflect.Type getType();
descriptor: ()Ljava/lang/reflect/Type;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/reflect/TypeToken<TT;>;
public boolean isAssignableFrom(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.google.gson.reflect.TypeToken.isAssignableFrom:(Ljava/lang/reflect/Type;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/reflect/TypeToken<TT;>;
0 1 1 cls Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Z
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
cls
public boolean isAssignableFrom(java.lang.reflect.Type);
descriptor: (Ljava/lang/reflect/Type;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
aload 1
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
instanceof java.lang.Class
ifeq 6
5: aload 0
getfield com.google.gson.reflect.TypeToken.rawType:Ljava/lang/Class;
aload 1
invokestatic com.google.gson.internal.$Gson$Types.getRawType:(Ljava/lang/reflect/Type;)Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ireturn
6: StackMap locals:
StackMap stack:
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
instanceof java.lang.reflect.ParameterizedType
ifeq 10
7: aload 1
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
checkcast java.lang.reflect.ParameterizedType
8: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
9: invokestatic com.google.gson.reflect.TypeToken.isAssignableFrom:(Ljava/lang/reflect/Type;Ljava/lang/reflect/ParameterizedType;Ljava/util/Map;)Z
ireturn
10: StackMap locals:
StackMap stack:
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
instanceof java.lang.reflect.GenericArrayType
ifeq 15
11: aload 0
getfield com.google.gson.reflect.TypeToken.rawType:Ljava/lang/Class;
aload 1
invokestatic com.google.gson.internal.$Gson$Types.getRawType:(Ljava/lang/reflect/Type;)Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 14
12: aload 1
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
checkcast java.lang.reflect.GenericArrayType
invokestatic com.google.gson.reflect.TypeToken.isAssignableFrom:(Ljava/lang/reflect/Type;Ljava/lang/reflect/GenericArrayType;)Z
ifeq 14
13: iconst_1
ireturn
StackMap locals:
StackMap stack:
14: iconst_0
ireturn
15: StackMap locals:
StackMap stack:
aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
iconst_3
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/lang/Class;
aastore
dup
iconst_1
ldc Ljava/lang/reflect/ParameterizedType;
aastore
dup
iconst_2
ldc Ljava/lang/reflect/GenericArrayType;
aastore
16: invokestatic com.google.gson.reflect.TypeToken.buildUnexpectedTypeError:(Ljava/lang/reflect/Type;[Ljava/lang/Class;)Ljava/lang/AssertionError;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/google/gson/reflect/TypeToken<TT;>;
0 17 1 from Ljava/lang/reflect/Type;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
from
public boolean isAssignableFrom(com.google.gson.reflect.TypeToken<?>);
descriptor: (Lcom/google/gson/reflect/TypeToken;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.google.gson.reflect.TypeToken.getType:()Ljava/lang/reflect/Type;
invokevirtual com.google.gson.reflect.TypeToken.isAssignableFrom:(Ljava/lang/reflect/Type;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/reflect/TypeToken<TT;>;
0 1 1 token Lcom/google/gson/reflect/TypeToken<*>;
Signature: (Lcom/google/gson/reflect/TypeToken<*>;)Z
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
token
private static boolean isAssignableFrom(java.lang.reflect.Type, java.lang.reflect.GenericArrayType);
descriptor: (Ljava/lang/reflect/Type;Ljava/lang/reflect/GenericArrayType;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.lang.reflect.GenericArrayType.getGenericComponentType:()Ljava/lang/reflect/Type;
astore 2
start local 2 1: aload 2
instanceof java.lang.reflect.ParameterizedType
ifeq 15
2: aload 0
astore 3
start local 3 3: aload 0
instanceof java.lang.reflect.GenericArrayType
ifeq 6
4: aload 0
checkcast java.lang.reflect.GenericArrayType
invokeinterface java.lang.reflect.GenericArrayType.getGenericComponentType:()Ljava/lang/reflect/Type;
astore 3
5: goto 12
StackMap locals: java.lang.reflect.Type java.lang.reflect.Type
StackMap stack:
6: aload 0
instanceof java.lang.Class
ifeq 12
7: aload 0
checkcast java.lang.Class
astore 4
start local 4 8: goto 10
9: StackMap locals: java.lang.Class
StackMap stack:
aload 4
invokevirtual java.lang.Class.getComponentType:()Ljava/lang/Class;
astore 4
10: StackMap locals:
StackMap stack:
aload 4
invokevirtual java.lang.Class.isArray:()Z
ifne 9
11: aload 4
astore 3
end local 4 12: StackMap locals:
StackMap stack:
aload 3
aload 2
checkcast java.lang.reflect.ParameterizedType
13: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
14: invokestatic com.google.gson.reflect.TypeToken.isAssignableFrom:(Ljava/lang/reflect/Type;Ljava/lang/reflect/ParameterizedType;Ljava/util/Map;)Z
ireturn
end local 3 15: StackMap locals:
StackMap stack:
iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 from Ljava/lang/reflect/Type;
0 16 1 to Ljava/lang/reflect/GenericArrayType;
1 16 2 toGenericComponentType Ljava/lang/reflect/Type;
3 15 3 t Ljava/lang/reflect/Type;
8 12 4 classType Ljava/lang/Class<*>;
MethodParameters:
Name Flags
from
to
private static boolean isAssignableFrom(java.lang.reflect.Type, java.lang.reflect.ParameterizedType, java.util.Map<java.lang.String, java.lang.reflect.Type>);
descriptor: (Ljava/lang/reflect/Type;Ljava/lang/reflect/ParameterizedType;Ljava/util/Map;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 0
ifnonnull 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
aload 0
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 4
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
aload 0
invokestatic com.google.gson.internal.$Gson$Types.getRawType:(Ljava/lang/reflect/Type;)Ljava/lang/Class;
astore 3
start local 3 5: aconst_null
astore 4
start local 4 6: aload 0
instanceof java.lang.reflect.ParameterizedType
ifeq 8
7: aload 0
checkcast java.lang.reflect.ParameterizedType
astore 4
8: StackMap locals: java.lang.Class java.lang.reflect.ParameterizedType
StackMap stack:
aload 4
ifnull 24
9: aload 4
invokeinterface java.lang.reflect.ParameterizedType.getActualTypeArguments:()[Ljava/lang/reflect/Type;
astore 5
start local 5 10: aload 3
invokevirtual java.lang.Class.getTypeParameters:()[Ljava/lang/reflect/TypeVariable;
astore 6
start local 6 11: iconst_0
istore 7
start local 7 12: goto 21
13: StackMap locals: java.lang.reflect.Type[] java.lang.reflect.TypeVariable[] int
StackMap stack:
aload 5
iload 7
aaload
astore 8
start local 8 14: aload 6
iload 7
aaload
astore 9
start local 9 15: goto 18
16: StackMap locals: java.lang.reflect.Type java.lang.reflect.TypeVariable
StackMap stack:
aload 8
checkcast java.lang.reflect.TypeVariable
astore 10
start local 10 17: aload 2
aload 10
invokeinterface java.lang.reflect.TypeVariable.getName:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.reflect.Type
astore 8
end local 10 18: StackMap locals:
StackMap stack:
aload 8
instanceof java.lang.reflect.TypeVariable
ifne 16
19: aload 2
aload 9
invokeinterface java.lang.reflect.TypeVariable.getName:()Ljava/lang/String;
aload 8
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 9 end local 8 20: iinc 7 1
StackMap locals:
StackMap stack:
21: iload 7
aload 5
arraylength
if_icmplt 13
end local 7 22: aload 4
aload 1
aload 2
invokestatic com.google.gson.reflect.TypeToken.typeEquals:(Ljava/lang/reflect/ParameterizedType;Ljava/lang/reflect/ParameterizedType;Ljava/util/Map;)Z
ifeq 24
23: iconst_1
ireturn
end local 6 end local 5 24: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.lang.Class.getGenericInterfaces:()[Ljava/lang/reflect/Type;
dup
astore 8
arraylength
istore 7
iconst_0
istore 6
goto 29
StackMap locals: java.lang.reflect.Type java.lang.reflect.ParameterizedType java.util.Map java.lang.Class java.lang.reflect.ParameterizedType top int int java.lang.reflect.Type[]
StackMap stack:
25: aload 8
iload 6
aaload
astore 5
start local 5 26: aload 5
aload 1
new java.util.HashMap
dup
aload 2
invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
invokestatic com.google.gson.reflect.TypeToken.isAssignableFrom:(Ljava/lang/reflect/Type;Ljava/lang/reflect/ParameterizedType;Ljava/util/Map;)Z
ifeq 28
27: iconst_1
ireturn
end local 5 28: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
29: iload 6
iload 7
if_icmplt 25
30: aload 3
invokevirtual java.lang.Class.getGenericSuperclass:()Ljava/lang/reflect/Type;
astore 5
start local 5 31: aload 5
aload 1
new java.util.HashMap
dup
aload 2
invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
invokestatic com.google.gson.reflect.TypeToken.isAssignableFrom:(Ljava/lang/reflect/Type;Ljava/lang/reflect/ParameterizedType;Ljava/util/Map;)Z
ireturn
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 32 0 from Ljava/lang/reflect/Type;
0 32 1 to Ljava/lang/reflect/ParameterizedType;
0 32 2 typeVarMap Ljava/util/Map<Ljava/lang/String;Ljava/lang/reflect/Type;>;
5 32 3 clazz Ljava/lang/Class<*>;
6 32 4 ptype Ljava/lang/reflect/ParameterizedType;
10 24 5 tArgs [Ljava/lang/reflect/Type;
11 24 6 tParams [Ljava/lang/reflect/TypeVariable;
12 22 7 i I
14 20 8 arg Ljava/lang/reflect/Type;
15 20 9 var Ljava/lang/reflect/TypeVariable<*>;
17 18 10 v Ljava/lang/reflect/TypeVariable<*>;
26 28 5 itype Ljava/lang/reflect/Type;
31 32 5 sType Ljava/lang/reflect/Type;
Signature: (Ljava/lang/reflect/Type;Ljava/lang/reflect/ParameterizedType;Ljava/util/Map<Ljava/lang/String;Ljava/lang/reflect/Type;>;)Z
MethodParameters:
Name Flags
from
to
typeVarMap
private static boolean typeEquals(java.lang.reflect.ParameterizedType, java.lang.reflect.ParameterizedType, java.util.Map<java.lang.String, java.lang.reflect.Type>);
descriptor: (Ljava/lang/reflect/ParameterizedType;Ljava/lang/reflect/ParameterizedType;Ljava/util/Map;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokeinterface java.lang.reflect.ParameterizedType.getRawType:()Ljava/lang/reflect/Type;
aload 1
invokeinterface java.lang.reflect.ParameterizedType.getRawType:()Ljava/lang/reflect/Type;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 10
1: aload 0
invokeinterface java.lang.reflect.ParameterizedType.getActualTypeArguments:()[Ljava/lang/reflect/Type;
astore 3
start local 3 2: aload 1
invokeinterface java.lang.reflect.ParameterizedType.getActualTypeArguments:()[Ljava/lang/reflect/Type;
astore 4
start local 4 3: iconst_0
istore 5
start local 5 4: goto 8
5: StackMap locals: java.lang.reflect.Type[] java.lang.reflect.Type[] int
StackMap stack:
aload 3
iload 5
aaload
aload 4
iload 5
aaload
aload 2
invokestatic com.google.gson.reflect.TypeToken.matches:(Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/util/Map;)Z
ifne 7
6: iconst_0
ireturn
7: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
8: iload 5
aload 3
arraylength
if_icmplt 5
end local 5 9: iconst_1
ireturn
end local 4 end local 3 10: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 from Ljava/lang/reflect/ParameterizedType;
0 11 1 to Ljava/lang/reflect/ParameterizedType;
0 11 2 typeVarMap Ljava/util/Map<Ljava/lang/String;Ljava/lang/reflect/Type;>;
2 10 3 fromArgs [Ljava/lang/reflect/Type;
3 10 4 toArgs [Ljava/lang/reflect/Type;
4 9 5 i I
Signature: (Ljava/lang/reflect/ParameterizedType;Ljava/lang/reflect/ParameterizedType;Ljava/util/Map<Ljava/lang/String;Ljava/lang/reflect/Type;>;)Z
MethodParameters:
Name Flags
from
to
typeVarMap
private static java.lang.AssertionError buildUnexpectedTypeError(java.lang.reflect.Type, java.lang.Class<?>[]);
descriptor: (Ljava/lang/reflect/Type;[Ljava/lang/Class;)Ljava/lang/AssertionError;
flags: (0x008a) ACC_PRIVATE, ACC_STATIC, ACC_VARARGS
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "Unexpected type. Expected one of: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
1: astore 2
start local 2 2: aload 1
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 6
StackMap locals: java.lang.reflect.Type java.lang.Class[] java.lang.StringBuilder top int int java.lang.Class[]
StackMap stack:
3: aload 6
iload 4
aaload
astore 3
start local 3 4: aload 2
aload 3
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 3 5: iinc 4 1
StackMap locals:
StackMap stack:
6: iload 4
iload 5
if_icmplt 3
7: aload 2
ldc "but got: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
8: ldc ", for type token: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
pop
9: new java.lang.AssertionError
dup
aload 2
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.AssertionError.<init>:(Ljava/lang/Object;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 token Ljava/lang/reflect/Type;
0 10 1 expected [Ljava/lang/Class;
2 10 2 exceptionMessage Ljava/lang/StringBuilder;
4 5 3 clazz Ljava/lang/Class<*>;
Signature: (Ljava/lang/reflect/Type;[Ljava/lang/Class<*>;)Ljava/lang/AssertionError;
MethodParameters:
Name Flags
token
expected
private static boolean matches(java.lang.reflect.Type, java.lang.reflect.Type, java.util.Map<java.lang.String, java.lang.reflect.Type>);
descriptor: (Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/util/Map;)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 4
1: aload 0
instanceof java.lang.reflect.TypeVariable
ifeq 3
2: aload 1
aload 2
aload 0
checkcast java.lang.reflect.TypeVariable
invokeinterface java.lang.reflect.TypeVariable.getName:()Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 4
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
StackMap locals:
StackMap stack:
4: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 from Ljava/lang/reflect/Type;
0 5 1 to Ljava/lang/reflect/Type;
0 5 2 typeMap Ljava/util/Map<Ljava/lang/String;Ljava/lang/reflect/Type;>;
Signature: (Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;Ljava/util/Map<Ljava/lang/String;Ljava/lang/reflect/Type;>;)Z
MethodParameters:
Name Flags
from
to
typeMap
public final int hashCode();
descriptor: ()I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.gson.reflect.TypeToken.hashCode:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/reflect/TypeToken<TT;>;
public final boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
instanceof com.google.gson.reflect.TypeToken
ifeq 3
1: aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
aload 1
checkcast com.google.gson.reflect.TypeToken
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
invokestatic com.google.gson.internal.$Gson$Types.equals:(Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;)Z
ifeq 3
2: iconst_1
ireturn
StackMap locals:
StackMap stack:
3: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/google/gson/reflect/TypeToken<TT;>;
0 4 1 o Ljava/lang/Object;
MethodParameters:
Name Flags
o
public final java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.google.gson.reflect.TypeToken.type:Ljava/lang/reflect/Type;
invokestatic com.google.gson.internal.$Gson$Types.typeToString:(Ljava/lang/reflect/Type;)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/google/gson/reflect/TypeToken<TT;>;
public static com.google.gson.reflect.TypeToken<?> get(java.lang.reflect.Type);
descriptor: (Ljava/lang/reflect/Type;)Lcom/google/gson/reflect/TypeToken;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.google.gson.reflect.TypeToken
dup
aload 0
invokespecial com.google.gson.reflect.TypeToken.<init>:(Ljava/lang/reflect/Type;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 type Ljava/lang/reflect/Type;
Signature: (Ljava/lang/reflect/Type;)Lcom/google/gson/reflect/TypeToken<*>;
MethodParameters:
Name Flags
type
public static <T> com.google.gson.reflect.TypeToken<T> get(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Lcom/google/gson/reflect/TypeToken;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.google.gson.reflect.TypeToken
dup
aload 0
invokespecial com.google.gson.reflect.TypeToken.<init>:(Ljava/lang/reflect/Type;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 type Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Lcom/google/gson/reflect/TypeToken<TT;>;
MethodParameters:
Name Flags
type
public static com.google.gson.reflect.TypeToken<?> getParameterized(java.lang.reflect.Type, java.lang.reflect.Type[]);
descriptor: (Ljava/lang/reflect/Type;[Ljava/lang/reflect/Type;)Lcom/google/gson/reflect/TypeToken;
flags: (0x0089) ACC_PUBLIC, ACC_STATIC, ACC_VARARGS
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: new com.google.gson.reflect.TypeToken
dup
aconst_null
aload 0
aload 1
invokestatic com.google.gson.internal.$Gson$Types.newParameterizedTypeWithOwner:(Ljava/lang/reflect/Type;Ljava/lang/reflect/Type;[Ljava/lang/reflect/Type;)Ljava/lang/reflect/ParameterizedType;
invokespecial com.google.gson.reflect.TypeToken.<init>:(Ljava/lang/reflect/Type;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 rawType Ljava/lang/reflect/Type;
0 1 1 typeArguments [Ljava/lang/reflect/Type;
Signature: (Ljava/lang/reflect/Type;[Ljava/lang/reflect/Type;)Lcom/google/gson/reflect/TypeToken<*>;
MethodParameters:
Name Flags
rawType
typeArguments
public static com.google.gson.reflect.TypeToken<?> getArray(java.lang.reflect.Type);
descriptor: (Ljava/lang/reflect/Type;)Lcom/google/gson/reflect/TypeToken;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new com.google.gson.reflect.TypeToken
dup
aload 0
invokestatic com.google.gson.internal.$Gson$Types.arrayOf:(Ljava/lang/reflect/Type;)Ljava/lang/reflect/GenericArrayType;
invokespecial com.google.gson.reflect.TypeToken.<init>:(Ljava/lang/reflect/Type;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 componentType Ljava/lang/reflect/Type;
Signature: (Ljava/lang/reflect/Type;)Lcom/google/gson/reflect/TypeToken<*>;
MethodParameters:
Name Flags
componentType
}
Signature: <T:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "TypeToken.java"