SVGLength.smali
.class public Lcom/horcrux/svg/SVGLength;
.super Ljava/lang/Object;
.source "SVGLength.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/horcrux/svg/SVGLength$UnitType;
}
.end annotation
# instance fields
.field public final unit:Lcom/horcrux/svg/SVGLength$UnitType;
.field public final value:D
# direct methods
.method static constructor <clinit>()V
.registers 1
return-void
.end method
.method public constructor <init>()V
.registers 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const-wide/16 v0, 0x0
iput-wide v0, p0, Lcom/horcrux/svg/SVGLength;->value:D
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->UNKNOWN:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
return-void
.end method
.method public constructor <init>(D)V
.registers 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-wide p1, p0, Lcom/horcrux/svg/SVGLength;->value:D
sget-object p1, Lcom/horcrux/svg/SVGLength$UnitType;->NUMBER:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object p1, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
return-void
.end method
.method public constructor <init>(Ljava/lang/String;)V
.registers 9
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
invoke-virtual {p1}, Ljava/lang/String;->trim()Ljava/lang/String;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/String;->length()I
move-result v0
add-int/lit8 v1, v0, -0x1
if-eqz v0, :cond_101
const-string v2, "normal"
invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_19
goto/16 :goto_101
:cond_19
invoke-virtual {p1, v1}, Ljava/lang/String;->codePointAt(I)I
move-result v2
const/16 v3, 0x25
const/4 v4, 0x0
if-ne v2, v3, :cond_36
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->PERCENTAGE:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
invoke-virtual {p1, v4, v1}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Ljava/lang/Double;->valueOf(Ljava/lang/String;)Ljava/lang/Double;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Double;->doubleValue()D
move-result-wide v0
iput-wide v0, p0, Lcom/horcrux/svg/SVGLength;->value:D
goto/16 :goto_109
:cond_36
add-int/lit8 v1, v0, -0x2
if-lez v1, :cond_f2
invoke-virtual {p1, v1}, Ljava/lang/String;->substring(I)Ljava/lang/String;
move-result-object v2
const/4 v3, -0x1
invoke-virtual {v2}, Ljava/lang/String;->hashCode()I
move-result v5
const/16 v6, 0xc6a
if-eq v5, v6, :cond_aa
const/16 v6, 0xca8
if-eq v5, v6, :cond_a0
const/16 v6, 0xcb3
if-eq v5, v6, :cond_96
const/16 v6, 0xd25
if-eq v5, v6, :cond_8c
const/16 v6, 0xda0
if-eq v5, v6, :cond_82
const/16 v6, 0xdf3
if-eq v5, v6, :cond_78
const/16 v6, 0xe04
if-eq v5, v6, :cond_6e
const/16 v6, 0xe08
if-eq v5, v6, :cond_64
goto :goto_b3
:cond_64
const-string v5, "px"
invoke-virtual {v2, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_b3
const/4 v3, 0x0
goto :goto_b3
:cond_6e
const-string v5, "pt"
invoke-virtual {v2, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_b3
const/4 v3, 0x3
goto :goto_b3
:cond_78
const-string v5, "pc"
invoke-virtual {v2, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_b3
const/4 v3, 0x4
goto :goto_b3
:cond_82
const-string v5, "mm"
invoke-virtual {v2, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_b3
const/4 v3, 0x5
goto :goto_b3
:cond_8c
const-string v5, "in"
invoke-virtual {v2, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_b3
const/4 v3, 0x7
goto :goto_b3
:cond_96
const-string v5, "ex"
invoke-virtual {v2, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_b3
const/4 v3, 0x2
goto :goto_b3
:cond_a0
const-string v5, "em"
invoke-virtual {v2, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_b3
const/4 v3, 0x1
goto :goto_b3
:cond_aa
const-string v5, "cm"
invoke-virtual {v2, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v2
if-eqz v2, :cond_b3
const/4 v3, 0x6
:cond_b3
:goto_b3
packed-switch v3, :pswitch_data_10a
sget-object v1, Lcom/horcrux/svg/SVGLength$UnitType;->NUMBER:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v1, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
goto :goto_e3
:pswitch_bb
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->IN:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
goto :goto_e2
:pswitch_c0
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->CM:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
goto :goto_e2
:pswitch_c5
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->MM:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
goto :goto_e2
:pswitch_ca
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->PC:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
goto :goto_e2
:pswitch_cf
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->PT:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
goto :goto_e2
:pswitch_d4
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->EXS:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
goto :goto_e2
:pswitch_d9
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->EMS:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
goto :goto_e2
:pswitch_de
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->NUMBER:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
:goto_e2
move v0, v1
:goto_e3
invoke-virtual {p1, v4, v0}, Ljava/lang/String;->substring(II)Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Ljava/lang/Double;->valueOf(Ljava/lang/String;)Ljava/lang/Double;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Double;->doubleValue()D
move-result-wide v0
iput-wide v0, p0, Lcom/horcrux/svg/SVGLength;->value:D
goto :goto_109
:cond_f2
sget-object v0, Lcom/horcrux/svg/SVGLength$UnitType;->NUMBER:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object v0, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
invoke-static {p1}, Ljava/lang/Double;->valueOf(Ljava/lang/String;)Ljava/lang/Double;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Double;->doubleValue()D
move-result-wide v0
iput-wide v0, p0, Lcom/horcrux/svg/SVGLength;->value:D
goto :goto_109
:cond_101
:goto_101
sget-object p1, Lcom/horcrux/svg/SVGLength$UnitType;->UNKNOWN:Lcom/horcrux/svg/SVGLength$UnitType;
iput-object p1, p0, Lcom/horcrux/svg/SVGLength;->unit:Lcom/horcrux/svg/SVGLength$UnitType;
const-wide/16 v0, 0x0
iput-wide v0, p0, Lcom/horcrux/svg/SVGLength;->value:D
:goto_109
return-void
:pswitch_data_10a
.packed-switch 0x0
:pswitch_de
:pswitch_d9
:pswitch_d4
:pswitch_cf
:pswitch_ca
:pswitch_c5
:pswitch_c0
:pswitch_bb
.end packed-switch
.end method
.method public static arrayFrom(Lcom/facebook/react/bridge/Dynamic;)Ljava/util/ArrayList;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/facebook/react/bridge/Dynamic;",
")",
"Ljava/util/ArrayList<",
"Lcom/horcrux/svg/SVGLength;",
">;"
}
.end annotation
sget-object v0, Lcom/horcrux/svg/SVGLength$1;->$SwitchMap$com$facebook$react$bridge$ReadableType:[I
invoke-interface {p0}, Lcom/facebook/react/bridge/Dynamic;->getType()Lcom/facebook/react/bridge/ReadableType;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
aget v0, v0, v1
const/4 v1, 0x1
if-eq v0, v1, :cond_48
const/4 v2, 0x2
if-eq v0, v2, :cond_36
const/4 v1, 0x3
if-eq v0, v1, :cond_17
const/4 p0, 0x0
return-object p0
:cond_17
invoke-interface {p0}, Lcom/facebook/react/bridge/Dynamic;->asArray()Lcom/facebook/react/bridge/ReadableArray;
move-result-object p0
invoke-interface {p0}, Lcom/facebook/react/bridge/ReadableArray;->size()I
move-result v0
new-instance v1, Ljava/util/ArrayList;
invoke-direct {v1, v0}, Ljava/util/ArrayList;-><init>(I)V
const/4 v2, 0x0
:goto_25
if-ge v2, v0, :cond_35
invoke-interface {p0, v2}, Lcom/facebook/react/bridge/ReadableArray;->getDynamic(I)Lcom/facebook/react/bridge/Dynamic;
move-result-object v3
invoke-static {v3}, Lcom/horcrux/svg/SVGLength;->from(Lcom/facebook/react/bridge/Dynamic;)Lcom/horcrux/svg/SVGLength;
move-result-object v3
invoke-virtual {v1, v3}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
add-int/lit8 v2, v2, 0x1
goto :goto_25
:cond_35
return-object v1
:cond_36
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(I)V
new-instance v1, Lcom/horcrux/svg/SVGLength;
invoke-interface {p0}, Lcom/facebook/react/bridge/Dynamic;->asString()Ljava/lang/String;
move-result-object p0
invoke-direct {v1, p0}, Lcom/horcrux/svg/SVGLength;-><init>(Ljava/lang/String;)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-object v0
:cond_48
new-instance v0, Ljava/util/ArrayList;
invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(I)V
new-instance v1, Lcom/horcrux/svg/SVGLength;
invoke-interface {p0}, Lcom/facebook/react/bridge/Dynamic;->asDouble()D
move-result-wide v2
invoke-direct {v1, v2, v3}, Lcom/horcrux/svg/SVGLength;-><init>(D)V
invoke-virtual {v0, v1}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
return-object v0
.end method
.method public static from(Lcom/facebook/react/bridge/Dynamic;)Lcom/horcrux/svg/SVGLength;
.registers 4
sget-object v0, Lcom/horcrux/svg/SVGLength$1;->$SwitchMap$com$facebook$react$bridge$ReadableType:[I
invoke-interface {p0}, Lcom/facebook/react/bridge/Dynamic;->getType()Lcom/facebook/react/bridge/ReadableType;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
aget v0, v0, v1
const/4 v1, 0x1
if-eq v0, v1, :cond_22
const/4 v1, 0x2
if-eq v0, v1, :cond_18
new-instance p0, Lcom/horcrux/svg/SVGLength;
invoke-direct {p0}, Lcom/horcrux/svg/SVGLength;-><init>()V
return-object p0
:cond_18
new-instance v0, Lcom/horcrux/svg/SVGLength;
invoke-interface {p0}, Lcom/facebook/react/bridge/Dynamic;->asString()Ljava/lang/String;
move-result-object p0
invoke-direct {v0, p0}, Lcom/horcrux/svg/SVGLength;-><init>(Ljava/lang/String;)V
return-object v0
:cond_22
new-instance v0, Lcom/horcrux/svg/SVGLength;
invoke-interface {p0}, Lcom/facebook/react/bridge/Dynamic;->asDouble()D
move-result-wide v1
invoke-direct {v0, v1, v2}, Lcom/horcrux/svg/SVGLength;-><init>(D)V
return-object v0
.end method
.method public static toString(Lcom/facebook/react/bridge/Dynamic;)Ljava/lang/String;
.registers 3
sget-object v0, Lcom/horcrux/svg/SVGLength$1;->$SwitchMap$com$facebook$react$bridge$ReadableType:[I
invoke-interface {p0}, Lcom/facebook/react/bridge/Dynamic;->getType()Lcom/facebook/react/bridge/ReadableType;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Enum;->ordinal()I
move-result v1
aget v0, v0, v1
const/4 v1, 0x1
if-eq v0, v1, :cond_19
const/4 v1, 0x2
if-eq v0, v1, :cond_14
const/4 p0, 0x0
return-object p0
:cond_14
invoke-interface {p0}, Lcom/facebook/react/bridge/Dynamic;->asString()Ljava/lang/String;
move-result-object p0
return-object p0
:cond_19
invoke-interface {p0}, Lcom/facebook/react/bridge/Dynamic;->asDouble()D
move-result-wide v0
invoke-static {v0, v1}, Ljava/lang/String;->valueOf(D)Ljava/lang/String;
move-result-object p0
return-object p0
.end method