apkfuckery/com.discord/smali/androidx/versionedparcelable/VersionedParcelParcel.smali
2019-08-30 22:04:20 +02:00

661 lines
18 KiB
Smali

.class Landroidx/versionedparcelable/VersionedParcelParcel;
.super Landroidx/versionedparcelable/VersionedParcel;
.source "VersionedParcelParcel.java"
# static fields
.field private static final DEBUG:Z = false
.field private static final TAG:Ljava/lang/String; = "VersionedParcelParcel"
# instance fields
.field private mCurrentField:I
.field private final mEnd:I
.field private mFieldId:I
.field private mNextRead:I
.field private final mOffset:I
.field private final mParcel:Landroid/os/Parcel;
.field private final mPositionLookup:Landroid/util/SparseIntArray;
.field private final mPrefix:Ljava/lang/String;
# direct methods
.method constructor <init>(Landroid/os/Parcel;)V
.locals 8
invoke-virtual {p1}, Landroid/os/Parcel;->dataPosition()I
move-result v2
invoke-virtual {p1}, Landroid/os/Parcel;->dataSize()I
move-result v3
new-instance v5, Landroidx/collection/ArrayMap;
invoke-direct {v5}, Landroidx/collection/ArrayMap;-><init>()V
new-instance v6, Landroidx/collection/ArrayMap;
invoke-direct {v6}, Landroidx/collection/ArrayMap;-><init>()V
new-instance v7, Landroidx/collection/ArrayMap;
invoke-direct {v7}, Landroidx/collection/ArrayMap;-><init>()V
const-string v4, ""
move-object v0, p0
move-object v1, p1
invoke-direct/range {v0 .. v7}, Landroidx/versionedparcelable/VersionedParcelParcel;-><init>(Landroid/os/Parcel;IILjava/lang/String;Landroidx/collection/ArrayMap;Landroidx/collection/ArrayMap;Landroidx/collection/ArrayMap;)V
return-void
.end method
.method private constructor <init>(Landroid/os/Parcel;IILjava/lang/String;Landroidx/collection/ArrayMap;Landroidx/collection/ArrayMap;Landroidx/collection/ArrayMap;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Landroid/os/Parcel;",
"II",
"Ljava/lang/String;",
"Landroidx/collection/ArrayMap<",
"Ljava/lang/String;",
"Ljava/lang/reflect/Method;",
">;",
"Landroidx/collection/ArrayMap<",
"Ljava/lang/String;",
"Ljava/lang/reflect/Method;",
">;",
"Landroidx/collection/ArrayMap<",
"Ljava/lang/String;",
"Ljava/lang/Class;",
">;)V"
}
.end annotation
invoke-direct {p0, p5, p6, p7}, Landroidx/versionedparcelable/VersionedParcel;-><init>(Landroidx/collection/ArrayMap;Landroidx/collection/ArrayMap;Landroidx/collection/ArrayMap;)V
new-instance p5, Landroid/util/SparseIntArray;
invoke-direct {p5}, Landroid/util/SparseIntArray;-><init>()V
iput-object p5, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mPositionLookup:Landroid/util/SparseIntArray;
const/4 p5, -0x1
iput p5, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mCurrentField:I
const/4 p6, 0x0
iput p6, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mNextRead:I
iput p5, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mFieldId:I
iput-object p1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
iput p2, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mOffset:I
iput p3, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mEnd:I
iget p1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mOffset:I
iput p1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mNextRead:I
iput-object p4, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mPrefix:Ljava/lang/String;
return-void
.end method
# virtual methods
.method public closeField()V
.locals 4
iget v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mCurrentField:I
if-ltz v0, :cond_0
iget-object v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mPositionLookup:Landroid/util/SparseIntArray;
invoke-virtual {v1, v0}, Landroid/util/SparseIntArray;->get(I)I
move-result v0
iget-object v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v1}, Landroid/os/Parcel;->dataPosition()I
move-result v1
sub-int v2, v1, v0
iget-object v3, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v3, v0}, Landroid/os/Parcel;->setDataPosition(I)V
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInt(I)V
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, v1}, Landroid/os/Parcel;->setDataPosition(I)V
:cond_0
return-void
.end method
.method protected createSubParcel()Landroidx/versionedparcelable/VersionedParcel;
.locals 9
new-instance v8, Landroidx/versionedparcelable/VersionedParcelParcel;
iget-object v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v1}, Landroid/os/Parcel;->dataPosition()I
move-result v2
iget v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mNextRead:I
iget v3, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mOffset:I
if-ne v0, v3, :cond_0
iget v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mEnd:I
:cond_0
move v3, v0
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
iget-object v4, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mPrefix:Ljava/lang/String;
invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, " "
invoke-virtual {v0, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v4
iget-object v5, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mReadCache:Landroidx/collection/ArrayMap;
iget-object v6, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mWriteCache:Landroidx/collection/ArrayMap;
iget-object v7, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcelizerCache:Landroidx/collection/ArrayMap;
move-object v0, v8
invoke-direct/range {v0 .. v7}, Landroidx/versionedparcelable/VersionedParcelParcel;-><init>(Landroid/os/Parcel;IILjava/lang/String;Landroidx/collection/ArrayMap;Landroidx/collection/ArrayMap;Landroidx/collection/ArrayMap;)V
return-object v8
.end method
.method public readBoolean()Z
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0}, Landroid/os/Parcel;->readInt()I
move-result v0
if-eqz v0, :cond_0
const/4 v0, 0x1
return v0
:cond_0
const/4 v0, 0x0
return v0
.end method
.method public readBundle()Landroid/os/Bundle;
.locals 2
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v1
invoke-virtual {v0, v1}, Landroid/os/Parcel;->readBundle(Ljava/lang/ClassLoader;)Landroid/os/Bundle;
move-result-object v0
return-object v0
.end method
.method public readByteArray()[B
.locals 2
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0}, Landroid/os/Parcel;->readInt()I
move-result v0
if-gez v0, :cond_0
const/4 v0, 0x0
return-object v0
:cond_0
new-array v0, v0, [B
iget-object v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v1, v0}, Landroid/os/Parcel;->readByteArray([B)V
return-object v0
.end method
.method protected readCharSequence()Ljava/lang/CharSequence;
.locals 2
sget-object v0, Landroid/text/TextUtils;->CHAR_SEQUENCE_CREATOR:Landroid/os/Parcelable$Creator;
iget-object v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-interface {v0, v1}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/lang/CharSequence;
return-object v0
.end method
.method public readDouble()D
.locals 2
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0}, Landroid/os/Parcel;->readDouble()D
move-result-wide v0
return-wide v0
.end method
.method public readField(I)Z
.locals 4
:goto_0
iget v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mNextRead:I
iget v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mEnd:I
const/4 v2, 0x1
const/4 v3, 0x0
if-ge v0, v1, :cond_2
iget v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mFieldId:I
if-ne v0, p1, :cond_0
return v2
:cond_0
invoke-static {v0}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v0
invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I
move-result v0
if-lez v0, :cond_1
return v3
:cond_1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
iget v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mNextRead:I
invoke-virtual {v0, v1}, Landroid/os/Parcel;->setDataPosition(I)V
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0}, Landroid/os/Parcel;->readInt()I
move-result v0
iget-object v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
move-result v1
iput v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mFieldId:I
iget v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mNextRead:I
add-int/2addr v1, v0
iput v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mNextRead:I
goto :goto_0
:cond_2
iget v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mFieldId:I
if-ne v0, p1, :cond_3
return v2
:cond_3
return v3
.end method
.method public readFloat()F
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0}, Landroid/os/Parcel;->readFloat()F
move-result v0
return v0
.end method
.method public readInt()I
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0}, Landroid/os/Parcel;->readInt()I
move-result v0
return v0
.end method
.method public readLong()J
.locals 2
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0}, Landroid/os/Parcel;->readLong()J
move-result-wide v0
return-wide v0
.end method
.method public readParcelable()Landroid/os/Parcelable;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"<T::",
"Landroid/os/Parcelable;",
">()TT;"
}
.end annotation
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v1
invoke-virtual {v0, v1}, Landroid/os/Parcel;->readParcelable(Ljava/lang/ClassLoader;)Landroid/os/Parcelable;
move-result-object v0
return-object v0
.end method
.method public readString()Ljava/lang/String;
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0}, Landroid/os/Parcel;->readString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public readStrongBinder()Landroid/os/IBinder;
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0}, Landroid/os/Parcel;->readStrongBinder()Landroid/os/IBinder;
move-result-object v0
return-object v0
.end method
.method public setOutputField(I)V
.locals 2
invoke-virtual {p0}, Landroidx/versionedparcelable/VersionedParcelParcel;->closeField()V
iput p1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mCurrentField:I
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mPositionLookup:Landroid/util/SparseIntArray;
iget-object v1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v1}, Landroid/os/Parcel;->dataPosition()I
move-result v1
invoke-virtual {v0, p1, v1}, Landroid/util/SparseIntArray;->put(II)V
const/4 v0, 0x0
invoke-virtual {p0, v0}, Landroidx/versionedparcelable/VersionedParcelParcel;->writeInt(I)V
invoke-virtual {p0, p1}, Landroidx/versionedparcelable/VersionedParcelParcel;->writeInt(I)V
return-void
.end method
.method public writeBoolean(Z)V
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeInt(I)V
return-void
.end method
.method public writeBundle(Landroid/os/Bundle;)V
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeBundle(Landroid/os/Bundle;)V
return-void
.end method
.method public writeByteArray([B)V
.locals 2
if-eqz p1, :cond_0
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
array-length v1, p1
invoke-virtual {v0, v1}, Landroid/os/Parcel;->writeInt(I)V
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeByteArray([B)V
return-void
:cond_0
iget-object p1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
const/4 v0, -0x1
invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
return-void
.end method
.method public writeByteArray([BII)V
.locals 2
if-eqz p1, :cond_0
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
array-length v1, p1
invoke-virtual {v0, v1}, Landroid/os/Parcel;->writeInt(I)V
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1, p2, p3}, Landroid/os/Parcel;->writeByteArray([BII)V
return-void
:cond_0
iget-object p1, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
const/4 p2, -0x1
invoke-virtual {p1, p2}, Landroid/os/Parcel;->writeInt(I)V
return-void
.end method
.method protected writeCharSequence(Ljava/lang/CharSequence;)V
.locals 2
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
const/4 v1, 0x0
invoke-static {p1, v0, v1}, Landroid/text/TextUtils;->writeToParcel(Ljava/lang/CharSequence;Landroid/os/Parcel;I)V
return-void
.end method
.method public writeDouble(D)V
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1, p2}, Landroid/os/Parcel;->writeDouble(D)V
return-void
.end method
.method public writeFloat(F)V
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeFloat(F)V
return-void
.end method
.method public writeInt(I)V
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeInt(I)V
return-void
.end method
.method public writeLong(J)V
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1, p2}, Landroid/os/Parcel;->writeLong(J)V
return-void
.end method
.method public writeParcelable(Landroid/os/Parcelable;)V
.locals 2
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
const/4 v1, 0x0
invoke-virtual {v0, p1, v1}, Landroid/os/Parcel;->writeParcelable(Landroid/os/Parcelable;I)V
return-void
.end method
.method public writeString(Ljava/lang/String;)V
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
return-void
.end method
.method public writeStrongBinder(Landroid/os/IBinder;)V
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeStrongBinder(Landroid/os/IBinder;)V
return-void
.end method
.method public writeStrongInterface(Landroid/os/IInterface;)V
.locals 1
iget-object v0, p0, Landroidx/versionedparcelable/VersionedParcelParcel;->mParcel:Landroid/os/Parcel;
invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeStrongInterface(Landroid/os/IInterface;)V
return-void
.end method