NavType$SerializableType.smali
.class public Landroidx/navigation/NavType$SerializableType;
.super Landroidx/navigation/NavType;
.source "NavType.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Landroidx/navigation/NavType;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "SerializableType"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<D::",
"Ljava/io/Serializable;",
">",
"Landroidx/navigation/NavType<",
"TD;>;"
}
.end annotation
# instance fields
.field private final mType:Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Class<",
"TD;>;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>(Ljava/lang/Class;)V
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class<",
"TD;>;)V"
}
.end annotation
const/4 v0, 0x1
.line 800
invoke-direct {p0, v0}, Landroidx/navigation/NavType;-><init>(Z)V
.line 801
const-class v0, Ljava/io/Serializable;
invoke-virtual {v0, p1}, Ljava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z
move-result v0
if-eqz v0, :cond_2e
.line 805
invoke-virtual {p1}, Ljava/lang/Class;->isEnum()Z
move-result v0
if-nez v0, :cond_15
.line 809
iput-object p1, p0, Landroidx/navigation/NavType$SerializableType;->mType:Ljava/lang/Class;
return-void
.line 806
:cond_15
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p1
const-string v1, " is an Enum. You should use EnumType instead."
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.line 802
:cond_2e
new-instance v0, Ljava/lang/IllegalArgumentException;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p1
const-string v1, " does not implement Serializable."
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method constructor <init>(ZLjava/lang/Class;)V
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(Z",
"Ljava/lang/Class<",
"TD;>;)V"
}
.end annotation
.line 813
invoke-direct {p0, p1}, Landroidx/navigation/NavType;-><init>(Z)V
.line 814
const-class p1, Ljava/io/Serializable;
invoke-virtual {p1, p2}, Ljava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z
move-result p1
if-eqz p1, :cond_e
.line 818
iput-object p2, p0, Landroidx/navigation/NavType$SerializableType;->mType:Ljava/lang/Class;
return-void
.line 815
:cond_e
new-instance p1, Ljava/lang/IllegalArgumentException;
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
move-result-object p2
const-string v0, " does not implement Serializable."
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
.end method
# virtual methods
.method public equals(Ljava/lang/Object;)Z
.registers 3
if-ne p0, p1, :cond_4
const/4 p1, 0x1
return p1
.line 850
:cond_4
instance-of v0, p1, Landroidx/navigation/NavType$SerializableType;
if-nez v0, :cond_a
const/4 p1, 0x0
return p1
.line 852
:cond_a
check-cast p1, Landroidx/navigation/NavType$SerializableType;
.line 854
iget-object v0, p0, Landroidx/navigation/NavType$SerializableType;->mType:Ljava/lang/Class;
iget-object p1, p1, Landroidx/navigation/NavType$SerializableType;->mType:Ljava/lang/Class;
invoke-virtual {v0, p1}, Ljava/lang/Object;->equals(Ljava/lang/Object;)Z
move-result p1
return p1
.end method
.method public get(Landroid/os/Bundle;Ljava/lang/String;)Ljava/io/Serializable;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/os/Bundle;",
"Ljava/lang/String;",
")TD;"
}
.end annotation
.line 832
invoke-virtual {p1, p2}, Landroid/os/Bundle;->get(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/io/Serializable;
return-object p1
.end method
.method public bridge synthetic get(Landroid/os/Bundle;Ljava/lang/String;)Ljava/lang/Object;
.registers 3
.line 791
invoke-virtual {p0, p1, p2}, Landroidx/navigation/NavType$SerializableType;->get(Landroid/os/Bundle;Ljava/lang/String;)Ljava/io/Serializable;
move-result-object p1
return-object p1
.end method
.method public getName()Ljava/lang/String;
.registers 2
.line 844
iget-object v0, p0, Landroidx/navigation/NavType$SerializableType;->mType:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public hashCode()I
.registers 2
.line 859
iget-object v0, p0, Landroidx/navigation/NavType$SerializableType;->mType:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I
move-result v0
return v0
.end method
.method public parseValue(Ljava/lang/String;)Ljava/io/Serializable;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")TD;"
}
.end annotation
.line 838
new-instance p1, Ljava/lang/UnsupportedOperationException;
const-string v0, "Serializables don\'t support default values."
invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public bridge synthetic parseValue(Ljava/lang/String;)Ljava/lang/Object;
.registers 2
.line 791
invoke-virtual {p0, p1}, Landroidx/navigation/NavType$SerializableType;->parseValue(Ljava/lang/String;)Ljava/io/Serializable;
move-result-object p1
return-object p1
.end method
.method public put(Landroid/os/Bundle;Ljava/lang/String;Ljava/io/Serializable;)V
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/os/Bundle;",
"Ljava/lang/String;",
"TD;)V"
}
.end annotation
.line 824
iget-object v0, p0, Landroidx/navigation/NavType$SerializableType;->mType:Ljava/lang/Class;
invoke-virtual {v0, p3}, Ljava/lang/Class;->cast(Ljava/lang/Object;)Ljava/lang/Object;
.line 825
invoke-virtual {p1, p2, p3}, Landroid/os/Bundle;->putSerializable(Ljava/lang/String;Ljava/io/Serializable;)V
return-void
.end method
.method public bridge synthetic put(Landroid/os/Bundle;Ljava/lang/String;Ljava/lang/Object;)V
.registers 4
.line 791
check-cast p3, Ljava/io/Serializable;
invoke-virtual {p0, p1, p2, p3}, Landroidx/navigation/NavType$SerializableType;->put(Landroid/os/Bundle;Ljava/lang/String;Ljava/io/Serializable;)V
return-void
.end method