2022-06-10 21:38:30 +09:00

307 lines
5.3 KiB
Smali

.class public final Lcom/google/gson/internal/Primitives;
.super Ljava/lang/Object;
.source "Primitives.java"
# direct methods
.method private constructor <init>()V
.locals 0
.line 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static isPrimitive(Ljava/lang/reflect/Type;)Z
.locals 1
.line 1
instance-of v0, p0, Ljava/lang/Class;
if-eqz v0, :cond_0
check-cast p0, Ljava/lang/Class;
invoke-virtual {p0}, Ljava/lang/Class;->isPrimitive()Z
move-result p0
if-eqz p0, :cond_0
const/4 p0, 0x1
goto :goto_0
:cond_0
const/4 p0, 0x0
:goto_0
return p0
.end method
.method public static isWrapperType(Ljava/lang/reflect/Type;)Z
.locals 1
.line 1
const-class v0, Ljava/lang/Integer;
if-eq p0, v0, :cond_1
const-class v0, Ljava/lang/Float;
if-eq p0, v0, :cond_1
const-class v0, Ljava/lang/Byte;
if-eq p0, v0, :cond_1
const-class v0, Ljava/lang/Double;
if-eq p0, v0, :cond_1
const-class v0, Ljava/lang/Long;
if-eq p0, v0, :cond_1
const-class v0, Ljava/lang/Character;
if-eq p0, v0, :cond_1
const-class v0, Ljava/lang/Boolean;
if-eq p0, v0, :cond_1
const-class v0, Ljava/lang/Short;
if-eq p0, v0, :cond_1
const-class v0, Ljava/lang/Void;
if-ne p0, v0, :cond_0
goto :goto_0
:cond_0
const/4 p0, 0x0
goto :goto_1
:cond_1
:goto_0
const/4 p0, 0x1
:goto_1
return p0
.end method
.method public static unwrap(Ljava/lang/Class;)Ljava/lang/Class;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Class<",
"TT;>;)",
"Ljava/lang/Class<",
"TT;>;"
}
.end annotation
.line 1
const-class v0, Ljava/lang/Integer;
if-ne p0, v0, :cond_0
sget-object p0, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
return-object p0
.line 2
:cond_0
const-class v0, Ljava/lang/Float;
if-ne p0, v0, :cond_1
sget-object p0, Ljava/lang/Float;->TYPE:Ljava/lang/Class;
return-object p0
.line 3
:cond_1
const-class v0, Ljava/lang/Byte;
if-ne p0, v0, :cond_2
sget-object p0, Ljava/lang/Byte;->TYPE:Ljava/lang/Class;
return-object p0
.line 4
:cond_2
const-class v0, Ljava/lang/Double;
if-ne p0, v0, :cond_3
sget-object p0, Ljava/lang/Double;->TYPE:Ljava/lang/Class;
return-object p0
.line 5
:cond_3
const-class v0, Ljava/lang/Long;
if-ne p0, v0, :cond_4
sget-object p0, Ljava/lang/Long;->TYPE:Ljava/lang/Class;
return-object p0
.line 6
:cond_4
const-class v0, Ljava/lang/Character;
if-ne p0, v0, :cond_5
sget-object p0, Ljava/lang/Character;->TYPE:Ljava/lang/Class;
return-object p0
.line 7
:cond_5
const-class v0, Ljava/lang/Boolean;
if-ne p0, v0, :cond_6
sget-object p0, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
return-object p0
.line 8
:cond_6
const-class v0, Ljava/lang/Short;
if-ne p0, v0, :cond_7
sget-object p0, Ljava/lang/Short;->TYPE:Ljava/lang/Class;
return-object p0
.line 9
:cond_7
const-class v0, Ljava/lang/Void;
if-ne p0, v0, :cond_8
sget-object p0, Ljava/lang/Void;->TYPE:Ljava/lang/Class;
:cond_8
return-object p0
.end method
.method public static wrap(Ljava/lang/Class;)Ljava/lang/Class;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">(",
"Ljava/lang/Class<",
"TT;>;)",
"Ljava/lang/Class<",
"TT;>;"
}
.end annotation
.line 1
sget-object v0, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
if-ne p0, v0, :cond_0
const-class p0, Ljava/lang/Integer;
return-object p0
.line 2
:cond_0
sget-object v0, Ljava/lang/Float;->TYPE:Ljava/lang/Class;
if-ne p0, v0, :cond_1
const-class p0, Ljava/lang/Float;
return-object p0
.line 3
:cond_1
sget-object v0, Ljava/lang/Byte;->TYPE:Ljava/lang/Class;
if-ne p0, v0, :cond_2
const-class p0, Ljava/lang/Byte;
return-object p0
.line 4
:cond_2
sget-object v0, Ljava/lang/Double;->TYPE:Ljava/lang/Class;
if-ne p0, v0, :cond_3
const-class p0, Ljava/lang/Double;
return-object p0
.line 5
:cond_3
sget-object v0, Ljava/lang/Long;->TYPE:Ljava/lang/Class;
if-ne p0, v0, :cond_4
const-class p0, Ljava/lang/Long;
return-object p0
.line 6
:cond_4
sget-object v0, Ljava/lang/Character;->TYPE:Ljava/lang/Class;
if-ne p0, v0, :cond_5
const-class p0, Ljava/lang/Character;
return-object p0
.line 7
:cond_5
sget-object v0, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
if-ne p0, v0, :cond_6
const-class p0, Ljava/lang/Boolean;
return-object p0
.line 8
:cond_6
sget-object v0, Ljava/lang/Short;->TYPE:Ljava/lang/Class;
if-ne p0, v0, :cond_7
const-class p0, Ljava/lang/Short;
return-object p0
.line 9
:cond_7
sget-object v0, Ljava/lang/Void;->TYPE:Ljava/lang/Class;
if-ne p0, v0, :cond_8
const-class p0, Ljava/lang/Void;
:cond_8
return-object p0
.end method