Changes of com.discord v934

This commit is contained in:
root 2019-07-31 02:08:31 +02:00
parent 0249120527
commit 0ed0646c18
6874 changed files with 155622 additions and 106272 deletions

View file

@ -0,0 +1,54 @@
.class final Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmBooleanField;
.super Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "AsmBooleanField"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 0
return-void
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readBoolean()Z
return-void
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmBooleanField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eP()Z
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeBoolean(Z)V
return-void
.end method

View file

@ -0,0 +1,54 @@
.class final Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmByteField;
.super Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "AsmByteField"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 0
return-void
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readByte()B
return-void
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmByteField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eQ()B
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeByte(B)V
return-void
.end method

View file

@ -0,0 +1,24 @@
.class abstract Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
.super Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x408
name = "AsmCachedField"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;-><init>()V
return-void
.end method

View file

@ -0,0 +1,54 @@
.class final Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCharField;
.super Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "AsmCharField"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 0
return-void
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readChar()C
return-void
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCharField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eO()C
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeChar(C)V
return-void
.end method

View file

@ -0,0 +1,54 @@
.class final Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmDoubleField;
.super Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "AsmDoubleField"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 0
return-void
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readDouble()D
return-void
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmDoubleField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eU()D
move-result-wide v0
invoke-virtual {p1, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeDouble(D)V
return-void
.end method

View file

@ -0,0 +1,54 @@
.class final Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmFloatField;
.super Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "AsmFloatField"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 0
return-void
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readFloat()F
return-void
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmFloatField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eV()F
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeFloat(F)V
return-void
.end method

View file

@ -0,0 +1,82 @@
.class final Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmIntField;
.super Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "AsmIntField"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 0
return-void
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 0
iget-boolean p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmIntField;->varIntsEnabled:Z
if-eqz p2, :cond_0
const/4 p2, 0x0
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Input;->readInt(Z)I
return-void
:cond_0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readInt()I
return-void
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 1
iget-boolean p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmIntField;->varIntsEnabled:Z
if-eqz p2, :cond_0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmIntField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eS()I
move-result p2
const/4 v0, 0x0
invoke-virtual {p1, p2, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(IZ)I
return-void
:cond_0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmIntField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eS()I
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(I)V
return-void
.end method

View file

@ -0,0 +1,82 @@
.class final Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmLongField;
.super Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "AsmLongField"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 0
return-void
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 0
iget-boolean p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmLongField;->varIntsEnabled:Z
if-eqz p2, :cond_0
const/4 p2, 0x0
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Input;->readLong(Z)J
return-void
:cond_0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readLong()J
return-void
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-boolean p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmLongField;->varIntsEnabled:Z
if-eqz p2, :cond_0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmLongField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eT()J
move-result-wide v0
const/4 p2, 0x0
invoke-virtual {p1, v0, v1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(JZ)I
return-void
:cond_0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmLongField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eT()J
move-result-wide v0
invoke-virtual {p1, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(J)V
return-void
.end method

View file

@ -0,0 +1,187 @@
.class final Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;
.super Lcom/esotericsoftware/kryo/serializers/ObjectField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "AsmObjectField"
.end annotation
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
const-string p1, ")"
const-string p2, " ("
:try_start_0
iget v0, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;->accessIndex:I
const/4 v1, -0x1
if-eq v0, v1, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {v1}, Lcom/esotericsoftware/b/c;->eM()Ljava/lang/Object;
move-result-object v1
invoke-virtual {v0, v1}, Lcom/esotericsoftware/kryo/Kryo;->copy(Ljava/lang/Object;)Ljava/lang/Object;
return-void
:cond_0
new-instance v0, Lcom/esotericsoftware/kryo/KryoException;
const-string v1, "Unknown acess index"
invoke-direct {v0, v1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;)V
throw v0
:try_end_0
.catch Lcom/esotericsoftware/kryo/KryoException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
move-exception v0
new-instance v1, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {v1, v0}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;->type:Ljava/lang/Class;
invoke-virtual {p2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p2
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v1, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw v1
:catch_1
move-exception v0
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;->type:Ljava/lang/Class;
invoke-virtual {p2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p2
invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw v0
.end method
.method public final getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget p1, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;->accessIndex:I
const/4 v0, -0x1
if-eq p1, v0, :cond_0
iget-object p1, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p1}, Lcom/esotericsoftware/b/c;->eM()Ljava/lang/Object;
move-result-object p1
return-object p1
:cond_0
new-instance p1, Lcom/esotericsoftware/kryo/KryoException;
const-string v0, "Unknown acess index"
invoke-direct {p1, v0}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public final setField(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 0
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget p1, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;->accessIndex:I
const/4 p2, -0x1
if-eq p1, p2, :cond_0
return-void
:cond_0
new-instance p1, Lcom/esotericsoftware/kryo/KryoException;
const-string p2, "Unknown acess index"
invoke-direct {p1, p2}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;)V
throw p1
.end method

View file

@ -0,0 +1,54 @@
.class final Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmShortField;
.super Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "AsmShortField"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 0
return-void
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readShort()S
return-void
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmShortField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eR()S
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeShort(I)V
return-void
.end method

View file

@ -0,0 +1,54 @@
.class final Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmStringField;
.super Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "AsmStringField"
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 0
return-void
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
return-void
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmStringField;->access:Lcom/esotericsoftware/b/c;
invoke-virtual {p2}, Lcom/esotericsoftware/b/c;->eN()Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/String;)V
return-void
.end method

View file

@ -0,0 +1,31 @@
.class Lcom/esotericsoftware/kryo/serializers/AsmCacheFields;
.super Ljava/lang/Object;
.source "AsmCacheFields.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;,
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmStringField;,
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmDoubleField;,
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmLongField;,
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCharField;,
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmBooleanField;,
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmByteField;,
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmShortField;,
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmFloatField;,
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmIntField;,
Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;
}
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method

View file

@ -0,0 +1,164 @@
.class Lcom/esotericsoftware/kryo/serializers/AsmCachedFieldFactory;
.super Ljava/lang/Object;
.source "AsmCachedFieldFactory.java"
# interfaces
.implements Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldFactory;
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public createCachedField(Ljava/lang/Class;Ljava/lang/reflect/Field;Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
.locals 0
invoke-virtual {p1}, Ljava/lang/Class;->isPrimitive()Z
move-result p2
if-eqz p2, :cond_8
sget-object p2, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_0
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmBooleanField;
invoke-direct {p1}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmBooleanField;-><init>()V
goto/16 :goto_0
:cond_0
sget-object p2, Ljava/lang/Byte;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_1
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmByteField;
invoke-direct {p1}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmByteField;-><init>()V
goto/16 :goto_0
:cond_1
sget-object p2, Ljava/lang/Character;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_2
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCharField;
invoke-direct {p1}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCharField;-><init>()V
goto :goto_0
:cond_2
sget-object p2, Ljava/lang/Short;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_3
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmShortField;
invoke-direct {p1}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmShortField;-><init>()V
goto :goto_0
:cond_3
sget-object p2, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_4
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmIntField;
invoke-direct {p1}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmIntField;-><init>()V
goto :goto_0
:cond_4
sget-object p2, Ljava/lang/Long;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_5
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmLongField;
invoke-direct {p1}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmLongField;-><init>()V
goto :goto_0
:cond_5
sget-object p2, Ljava/lang/Float;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_6
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmFloatField;
invoke-direct {p1}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmFloatField;-><init>()V
goto :goto_0
:cond_6
sget-object p2, Ljava/lang/Double;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_7
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmDoubleField;
invoke-direct {p1}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmDoubleField;-><init>()V
goto :goto_0
:cond_7
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
goto :goto_0
:cond_8
const-class p2, Ljava/lang/String;
if-ne p1, p2, :cond_a
iget-object p1, p3, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/Kryo;->getReferences()Z
move-result p1
if-eqz p1, :cond_9
iget-object p1, p3, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/Kryo;->getReferenceResolver()Lcom/esotericsoftware/kryo/ReferenceResolver;
move-result-object p1
const-class p2, Ljava/lang/String;
invoke-interface {p1, p2}, Lcom/esotericsoftware/kryo/ReferenceResolver;->useReferences(Ljava/lang/Class;)Z
move-result p1
if-nez p1, :cond_a
:cond_9
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmStringField;
invoke-direct {p1}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmStringField;-><init>()V
goto :goto_0
:cond_a
new-instance p1, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
:goto_0
return-object p1
.end method

View file

@ -0,0 +1,76 @@
.class Lcom/esotericsoftware/kryo/serializers/BeanSerializer$1;
.super Ljava/lang/Object;
.source "BeanSerializer.java"
# interfaces
.implements Ljava/util/Comparator;
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/esotericsoftware/kryo/serializers/BeanSerializer;-><init>(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Ljava/util/Comparator<",
"Ljava/beans/PropertyDescriptor;",
">;"
}
.end annotation
# instance fields
.field final synthetic this$0:Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
# direct methods
.method constructor <init>(Lcom/esotericsoftware/kryo/serializers/BeanSerializer;)V
.locals 0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$1;->this$0:Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public compare(Ljava/beans/PropertyDescriptor;Ljava/beans/PropertyDescriptor;)I
.locals 0
invoke-virtual {p1}, Ljava/beans/PropertyDescriptor;->getName()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2}, Ljava/beans/PropertyDescriptor;->getName()Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I
move-result p1
return p1
.end method
.method public bridge synthetic compare(Ljava/lang/Object;Ljava/lang/Object;)I
.locals 0
check-cast p1, Ljava/beans/PropertyDescriptor;
check-cast p2, Ljava/beans/PropertyDescriptor;
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$1;->compare(Ljava/beans/PropertyDescriptor;Ljava/beans/PropertyDescriptor;)I
move-result p1
return p1
.end method

View file

@ -0,0 +1,139 @@
.class Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
.super Ljava/lang/Object;
.source "BeanSerializer.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = "CachedProperty"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<X:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# instance fields
.field getMethod:Ljava/lang/reflect/Method;
.field getterAccessIndex:I
.field name:Ljava/lang/String;
.field serializer:Lcom/esotericsoftware/kryo/Serializer;
.field setMethod:Ljava/lang/reflect/Method;
.field setMethodType:Ljava/lang/Class;
.field setterAccessIndex:I
.field final synthetic this$0:Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
# direct methods
.method constructor <init>(Lcom/esotericsoftware/kryo/serializers/BeanSerializer;)V
.locals 0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->this$0:Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method get(Ljava/lang/Object;)Ljava/lang/Object;
.locals 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalAccessException;,
Ljava/lang/reflect/InvocationTargetException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->this$0:Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
iget-object v0, v0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->access:Ljava/lang/Object;
if-eqz v0, :cond_0
iget-object p1, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->this$0:Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
iget-object p1, p1, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->access:Ljava/lang/Object;
check-cast p1, Lcom/esotericsoftware/b/d;
invoke-virtual {p1}, Lcom/esotericsoftware/b/d;->eW()Ljava/lang/Object;
move-result-object p1
return-object p1
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->getMethod:Ljava/lang/reflect/Method;
sget-object v1, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->noArgs:[Ljava/lang/Object;
invoke-virtual {v0, p1, v1}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
return-object p1
.end method
.method set(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 3
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalAccessException;,
Ljava/lang/reflect/InvocationTargetException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->this$0:Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
iget-object v0, v0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->access:Ljava/lang/Object;
const/4 v1, 0x0
const/4 v2, 0x1
if-eqz v0, :cond_0
new-array p1, v2, [Ljava/lang/Object;
aput-object p2, p1, v1
return-void
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->setMethod:Ljava/lang/reflect/Method;
new-array v2, v2, [Ljava/lang/Object;
aput-object p2, v2, v1
invoke-virtual {v0, p1, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->name:Ljava/lang/String;
return-object v0
.end method

View file

@ -0,0 +1,867 @@
.class public Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "BeanSerializer.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Lcom/esotericsoftware/kryo/Serializer<",
"TT;>;"
}
.end annotation
# static fields
.field static final noArgs:[Ljava/lang/Object;
# instance fields
.field access:Ljava/lang/Object;
.field private properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
# direct methods
.method static constructor <clinit>()V
.locals 1
const/4 v0, 0x0
new-array v0, v0, [Ljava/lang/Object;
sput-object v0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->noArgs:[Ljava/lang/Object;
return-void
.end method
.method public constructor <init>(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;)V
.locals 11
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
:try_start_0
invoke-static {p2}, Ljava/beans/Introspector;->getBeanInfo(Ljava/lang/Class;)Ljava/beans/BeanInfo;
move-result-object v0
:try_end_0
.catch Ljava/beans/IntrospectionException; {:try_start_0 .. :try_end_0} :catch_1
invoke-interface {v0}, Ljava/beans/BeanInfo;->getPropertyDescriptors()[Ljava/beans/PropertyDescriptor;
move-result-object v0
new-instance v1, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$1;
invoke-direct {v1, p0}, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$1;-><init>(Lcom/esotericsoftware/kryo/serializers/BeanSerializer;)V
invoke-static {v0, v1}, Ljava/util/Arrays;->sort([Ljava/lang/Object;Ljava/util/Comparator;)V
new-instance v1, Ljava/util/ArrayList;
array-length v2, v0
invoke-direct {v1, v2}, Ljava/util/ArrayList;-><init>(I)V
array-length v2, v0
const/4 v3, 0x0
const/4 v4, 0x0
:goto_0
if-ge v4, v2, :cond_2
aget-object v5, v0, v4
invoke-virtual {v5}, Ljava/beans/PropertyDescriptor;->getName()Ljava/lang/String;
move-result-object v6
const-string v7, "class"
invoke-virtual {v6, v7}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v7
if-nez v7, :cond_1
invoke-virtual {v5}, Ljava/beans/PropertyDescriptor;->getReadMethod()Ljava/lang/reflect/Method;
move-result-object v7
invoke-virtual {v5}, Ljava/beans/PropertyDescriptor;->getWriteMethod()Ljava/lang/reflect/Method;
move-result-object v5
if-eqz v7, :cond_1
if-eqz v5, :cond_1
const/4 v8, 0x0
invoke-virtual {v7}, Ljava/lang/reflect/Method;->getReturnType()Ljava/lang/Class;
move-result-object v9
invoke-virtual {p1, v9}, Lcom/esotericsoftware/kryo/Kryo;->isFinal(Ljava/lang/Class;)Z
move-result v10
if-eqz v10, :cond_0
invoke-virtual {p1, v9}, Lcom/esotericsoftware/kryo/Kryo;->getRegistration(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Registration;
move-result-object v8
invoke-virtual {v8}, Lcom/esotericsoftware/kryo/Registration;->getSerializer()Lcom/esotericsoftware/kryo/Serializer;
move-result-object v8
:cond_0
new-instance v9, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
invoke-direct {v9, p0}, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;-><init>(Lcom/esotericsoftware/kryo/serializers/BeanSerializer;)V
iput-object v6, v9, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->name:Ljava/lang/String;
iput-object v7, v9, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->getMethod:Ljava/lang/reflect/Method;
iput-object v5, v9, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->setMethod:Ljava/lang/reflect/Method;
iput-object v8, v9, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->serializer:Lcom/esotericsoftware/kryo/Serializer;
invoke-virtual {v5}, Ljava/lang/reflect/Method;->getParameterTypes()[Ljava/lang/Class;
move-result-object v5
aget-object v5, v5, v3
iput-object v5, v9, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->setMethodType:Ljava/lang/Class;
invoke-virtual {v1, v9}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z
:cond_1
add-int/lit8 v4, v4, 0x1
goto :goto_0
:cond_2
invoke-virtual {v1}, Ljava/util/ArrayList;->size()I
move-result p1
new-array p1, p1, [Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
invoke-virtual {v1, p1}, Ljava/util/ArrayList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object p1
check-cast p1, [Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
:try_start_1
invoke-static {p2}, Lcom/esotericsoftware/b/d;->k(Ljava/lang/Class;)Lcom/esotericsoftware/b/d;
move-result-object p1
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->access:Ljava/lang/Object;
iget-object p1, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
array-length p1, p1
:goto_1
if-ge v3, p1, :cond_3
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
aget-object p2, p2, v3
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->access:Ljava/lang/Object;
check-cast v0, Lcom/esotericsoftware/b/d;
iget-object v1, p2, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->getMethod:Ljava/lang/reflect/Method;
invoke-virtual {v1}, Ljava/lang/reflect/Method;->getName()Ljava/lang/String;
move-result-object v1
iget-object v2, p2, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->getMethod:Ljava/lang/reflect/Method;
invoke-virtual {v2}, Ljava/lang/reflect/Method;->getParameterTypes()[Ljava/lang/Class;
move-result-object v2
invoke-virtual {v0, v1, v2}, Lcom/esotericsoftware/b/d;->a(Ljava/lang/String;[Ljava/lang/Class;)I
move-result v0
iput v0, p2, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->getterAccessIndex:I
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->access:Ljava/lang/Object;
check-cast v0, Lcom/esotericsoftware/b/d;
iget-object v1, p2, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->setMethod:Ljava/lang/reflect/Method;
invoke-virtual {v1}, Ljava/lang/reflect/Method;->getName()Ljava/lang/String;
move-result-object v1
iget-object v2, p2, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->setMethod:Ljava/lang/reflect/Method;
invoke-virtual {v2}, Ljava/lang/reflect/Method;->getParameterTypes()[Ljava/lang/Class;
move-result-object v2
invoke-virtual {v0, v1, v2}, Lcom/esotericsoftware/b/d;->a(Ljava/lang/String;[Ljava/lang/Class;)I
move-result v0
iput v0, p2, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->setterAccessIndex:I
:try_end_1
.catch Ljava/lang/Throwable; {:try_start_1 .. :try_end_1} :catch_0
add-int/lit8 v3, v3, 0x1
goto :goto_1
:catch_0
:cond_3
return-void
:catch_1
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
const-string v0, "Error getting bean info."
invoke-direct {p2, v0, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
goto :goto_3
:goto_2
throw p2
:goto_3
goto :goto_2
.end method
# virtual methods
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"TT;)TT;"
}
.end annotation
const-string v0, ")"
const-string v1, " ("
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v2
invoke-virtual {p1, v2}, Lcom/esotericsoftware/kryo/Kryo;->newInstance(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
array-length v2, v2
const/4 v3, 0x0
:goto_0
if-ge v3, v2, :cond_0
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
aget-object v4, v4, v3
:try_start_0
invoke-virtual {v4, p2}, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v5
invoke-virtual {v4, p1, v5}, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->set(Ljava/lang/Object;Ljava/lang/Object;)V
:try_end_0
.catch Lcom/esotericsoftware/kryo/KryoException; {:try_start_0 .. :try_end_0} :catch_2
.catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
add-int/lit8 v3, v3, 0x1
goto :goto_0
:catch_0
move-exception p2
new-instance v2, Lcom/esotericsoftware/kryo/KryoException;
new-instance v3, Ljava/lang/StringBuilder;
const-string v5, "Error copying bean property: "
invoke-direct {v3, v5}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p1
invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v2, p1, p2}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v2
:catch_1
move-exception p2
new-instance v2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {v2, p2}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw v2
:catch_2
move-exception p2
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p1
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
:cond_0
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"TT;>;)TT;"
}
.end annotation
const-string v0, ")"
const-string v1, " ("
invoke-virtual {p1, p3}, Lcom/esotericsoftware/kryo/Kryo;->newInstance(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p3
invoke-virtual {p1, p3}, Lcom/esotericsoftware/kryo/Kryo;->reference(Ljava/lang/Object;)V
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
array-length v2, v2
const/4 v3, 0x0
:goto_0
if-ge v3, v2, :cond_2
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
aget-object v4, v4, v3
:try_start_0
sget-boolean v5, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v5, :cond_0
const-string v5, "kryo"
new-instance v6, Ljava/lang/StringBuilder;
const-string v7, "Read property: "
invoke-direct {v6, v7}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v7
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v6
invoke-static {v5, v6}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
iget-object v5, v4, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->serializer:Lcom/esotericsoftware/kryo/Serializer;
if-eqz v5, :cond_1
iget-object v6, v4, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->setMethodType:Ljava/lang/Class;
invoke-virtual {p1, p2, v6, v5}, Lcom/esotericsoftware/kryo/Kryo;->readObjectOrNull(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v5
goto :goto_1
:cond_1
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClassAndObject(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object;
move-result-object v5
:goto_1
invoke-virtual {v4, p3, v5}, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->set(Ljava/lang/Object;Ljava/lang/Object;)V
:try_end_0
.catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_3
.catch Ljava/lang/reflect/InvocationTargetException; {:try_start_0 .. :try_end_0} :catch_2
.catch Lcom/esotericsoftware/kryo/KryoException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_0
add-int/lit8 v3, v3, 0x1
goto :goto_0
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p3
invoke-virtual {p3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p3
invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
:catch_1
move-exception p1
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p3
invoke-virtual {p3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p3
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p1
:catch_2
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Error invoking setter method: "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p3
invoke-virtual {p3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p3
invoke-virtual {v2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p3
invoke-direct {p2, p3, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
:catch_3
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Error accessing setter method: "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p3
invoke-virtual {p3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p3
invoke-virtual {v2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p3
invoke-direct {p2, p3, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
:cond_2
return-object p3
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 9
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Output;",
"TT;)V"
}
.end annotation
const-string v0, ")"
const-string v1, " ("
invoke-virtual {p3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v2
iget-object v3, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
array-length v3, v3
const/4 v4, 0x0
:goto_0
if-ge v4, v3, :cond_2
iget-object v5, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer;->properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
aget-object v5, v5, v4
:try_start_0
sget-boolean v6, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v6, :cond_0
const-string v6, "kryo"
new-instance v7, Ljava/lang/StringBuilder;
const-string v8, "Write property: "
invoke-direct {v7, v8}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v8
invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v7
invoke-static {v6, v7}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
invoke-virtual {v5, p3}, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v6
iget-object v7, v5, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->serializer:Lcom/esotericsoftware/kryo/Serializer;
if-eqz v7, :cond_1
invoke-virtual {p1, p2, v6, v7}, Lcom/esotericsoftware/kryo/Kryo;->writeObjectOrNull(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_1
:cond_1
invoke-virtual {p1, p2, v6}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
:try_end_0
.catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_3
.catch Ljava/lang/reflect/InvocationTargetException; {:try_start_0 .. :try_end_0} :catch_2
.catch Lcom/esotericsoftware/kryo/KryoException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_0
:goto_1
add-int/lit8 v4, v4, 0x1
goto :goto_0
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p3
invoke-virtual {p1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
:catch_1
move-exception p1
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p3
invoke-virtual {p2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p1
:catch_2
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
new-instance p3, Ljava/lang/StringBuilder;
const-string v3, "Error invoking getter method: "
invoke-direct {p3, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p3
invoke-direct {p2, p3, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
:catch_3
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
new-instance p3, Ljava/lang/StringBuilder;
const-string v3, "Error accessing getter method: "
invoke-direct {p3, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
invoke-virtual {p3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p3
invoke-direct {p2, p3, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
:cond_2
return-void
.end method

View file

@ -0,0 +1,43 @@
.class Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer$1;
.super Lcom/esotericsoftware/kryo/io/Output;
.source "BlowfishSerializer.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingMethod;
value = Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x0
name = null
.end annotation
# instance fields
.field final synthetic this$0:Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;
# direct methods
.method constructor <init>(Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;Ljava/io/OutputStream;I)V
.locals 0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer$1;->this$0:Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;
invoke-direct {p0, p2, p3}, Lcom/esotericsoftware/kryo/io/Output;-><init>(Ljava/io/OutputStream;I)V
return-void
.end method
# virtual methods
.method public close()V
.locals 0
.annotation system Ldalvik/annotation/Throws;
value = {
Lcom/esotericsoftware/kryo/KryoException;
}
.end annotation
return-void
.end method

View file

@ -0,0 +1,143 @@
.class public Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "BlowfishSerializer.java"
# static fields
.field private static keySpec:Ljavax/crypto/spec/SecretKeySpec;
# instance fields
.field private final serializer:Lcom/esotericsoftware/kryo/Serializer;
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/Serializer;[B)V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
new-instance p1, Ljavax/crypto/spec/SecretKeySpec;
const-string v0, "Blowfish"
invoke-direct {p1, p2, v0}, Ljavax/crypto/spec/SecretKeySpec;-><init>([BLjava/lang/String;)V
sput-object p1, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;->keySpec:Ljavax/crypto/spec/SecretKeySpec;
return-void
.end method
.method private static getCipher(I)Ljavax/crypto/Cipher;
.locals 2
:try_start_0
const-string v0, "Blowfish"
invoke-static {v0}, Ljavax/crypto/Cipher;->getInstance(Ljava/lang/String;)Ljavax/crypto/Cipher;
move-result-object v0
sget-object v1, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;->keySpec:Ljavax/crypto/spec/SecretKeySpec;
invoke-virtual {v0, p0, v1}, Ljavax/crypto/Cipher;->init(ILjava/security/Key;)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-object v0
:catch_0
move-exception p0
new-instance v0, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {v0, p0}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw v0
.end method
# virtual methods
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
invoke-virtual {v0, p1, p2}, Lcom/esotericsoftware/kryo/Serializer;->copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 3
const/4 v0, 0x2
invoke-static {v0}, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;->getCipher(I)Ljavax/crypto/Cipher;
move-result-object v0
new-instance v1, Ljavax/crypto/CipherInputStream;
invoke-direct {v1, p2, v0}, Ljavax/crypto/CipherInputStream;-><init>(Ljava/io/InputStream;Ljavax/crypto/Cipher;)V
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
new-instance v0, Lcom/esotericsoftware/kryo/io/Input;
const/16 v2, 0x100
invoke-direct {v0, v1, v2}, Lcom/esotericsoftware/kryo/io/Input;-><init>(Ljava/io/InputStream;I)V
invoke-virtual {p2, p1, v0, p3}, Lcom/esotericsoftware/kryo/Serializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
const/4 v0, 0x1
invoke-static {v0}, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;->getCipher(I)Ljavax/crypto/Cipher;
move-result-object v0
new-instance v1, Ljavax/crypto/CipherOutputStream;
invoke-direct {v1, p2, v0}, Ljavax/crypto/CipherOutputStream;-><init>(Ljava/io/OutputStream;Ljavax/crypto/Cipher;)V
new-instance p2, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer$1;
const/16 v0, 0x100
invoke-direct {p2, p0, v1, v0}, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer$1;-><init>(Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;Ljava/io/OutputStream;I)V
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
invoke-virtual {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/Serializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Output;->flush()V
:try_start_0
invoke-virtual {v1}, Ljavax/crypto/CipherOutputStream;->close()V
:try_end_0
.catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
.end method

View file

@ -0,0 +1,24 @@
.class public Lcom/esotericsoftware/kryo/serializers/ClosureSerializer$Closure;
.super Ljava/lang/Object;
.source "ClosureSerializer.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/ClosureSerializer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "Closure"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method

View file

@ -0,0 +1,235 @@
.class public Lcom/esotericsoftware/kryo/serializers/ClosureSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "ClosureSerializer.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/esotericsoftware/kryo/serializers/ClosureSerializer$Closure;
}
.end annotation
# static fields
.field private static readResolve:Ljava/lang/reflect/Method;
.field private static serializedLambda:Ljava/lang/Class;
# direct methods
.method static constructor <clinit>()V
.locals 3
const-class v0, Ljava/lang/invoke/SerializedLambda;
sput-object v0, Lcom/esotericsoftware/kryo/serializers/ClosureSerializer;->serializedLambda:Ljava/lang/Class;
:try_start_0
sget-object v0, Lcom/esotericsoftware/kryo/serializers/ClosureSerializer;->serializedLambda:Ljava/lang/Class;
const-string v1, "readResolve"
const/4 v2, 0x0
new-array v2, v2, [Ljava/lang/Class;
invoke-virtual {v0, v1, v2}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v0
sput-object v0, Lcom/esotericsoftware/kryo/serializers/ClosureSerializer;->readResolve:Ljava/lang/reflect/Method;
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/lang/reflect/Method;->setAccessible(Z)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception v0
new-instance v1, Ljava/lang/RuntimeException;
const-string v2, "Could not obtain SerializedLambda or its methods via reflection"
invoke-direct {v1, v2, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
return-void
.end method
# virtual methods
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 4
const-string p1, "Could not serialize lambda"
:try_start_0
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
const-string v1, "writeReplace"
const/4 v2, 0x0
new-array v3, v2, [Ljava/lang/Class;
invoke-virtual {v0, v1, v3}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v0
const/4 v1, 0x1
invoke-virtual {v0, v1}, Ljava/lang/reflect/Method;->setAccessible(Z)V
new-array v1, v2, [Ljava/lang/Object;
invoke-virtual {v0, p2, v1}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p2
sget-object v0, Lcom/esotericsoftware/kryo/serializers/ClosureSerializer;->serializedLambda:Ljava/lang/Class;
invoke-virtual {v0, p2}, Ljava/lang/Class;->isInstance(Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
sget-object v0, Lcom/esotericsoftware/kryo/serializers/ClosureSerializer;->readResolve:Ljava/lang/reflect/Method;
new-array v1, v2, [Ljava/lang/Object;
invoke-virtual {v0, p2, v1}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
return-object p1
:cond_0
new-instance p2, Ljava/lang/RuntimeException;
invoke-direct {p2, p1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p2
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
move-exception p2
new-instance v0, Ljava/lang/RuntimeException;
invoke-direct {v0, p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v0
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
:try_start_0
sget-object p3, Lcom/esotericsoftware/kryo/serializers/ClosureSerializer;->serializedLambda:Ljava/lang/Class;
invoke-virtual {p1, p2, p3}, Lcom/esotericsoftware/kryo/Kryo;->readObject(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
sget-object p2, Lcom/esotericsoftware/kryo/serializers/ClosureSerializer;->readResolve:Ljava/lang/reflect/Method;
const/4 p3, 0x0
new-array p3, p3, [Ljava/lang/Object;
invoke-virtual {p2, p1, p3}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-object p1
:catch_0
move-exception p1
new-instance p2, Ljava/lang/RuntimeException;
const-string p3, "Could not serialize lambda"
invoke-direct {p2, p3, p1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 5
const-string v0, "Could not serialize lambda"
:try_start_0
invoke-virtual {p3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
const-string v2, "writeReplace"
const/4 v3, 0x0
new-array v4, v3, [Ljava/lang/Class;
invoke-virtual {v1, v2, v4}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v1
const/4 v2, 0x1
invoke-virtual {v1, v2}, Ljava/lang/reflect/Method;->setAccessible(Z)V
new-array v2, v3, [Ljava/lang/Object;
invoke-virtual {v1, p3, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p3
sget-object v1, Lcom/esotericsoftware/kryo/serializers/ClosureSerializer;->serializedLambda:Ljava/lang/Class;
invoke-virtual {v1, p3}, Ljava/lang/Class;->isInstance(Ljava/lang/Object;)Z
move-result v1
if-eqz v1, :cond_0
invoke-virtual {p1, p2, p3}, Lcom/esotericsoftware/kryo/Kryo;->writeObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
return-void
:cond_0
new-instance p1, Ljava/lang/RuntimeException;
invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p1
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
move-exception p1
new-instance p2, Ljava/lang/RuntimeException;
invoke-direct {p2, v0, p1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
.end method

View file

@ -0,0 +1,449 @@
.class public Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "CollectionSerializer.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/esotericsoftware/kryo/serializers/CollectionSerializer$BindCollection;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/Collection;",
">;"
}
.end annotation
# instance fields
.field private elementClass:Ljava/lang/Class;
.field private elementsCanBeNull:Z
.field private genericType:Ljava/lang/Class;
.field private serializer:Lcom/esotericsoftware/kryo/Serializer;
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->elementsCanBeNull:Z
return-void
.end method
.method public constructor <init>(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->elementsCanBeNull:Z
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->setElementClass(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)V
return-void
.end method
.method public constructor <init>(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;Z)V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->elementsCanBeNull:Z
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->setElementClass(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)V
iput-boolean p3, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->elementsCanBeNull:Z
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, Ljava/util/Collection;
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Collection;)Ljava/util/Collection;
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Collection;)Ljava/util/Collection;
.locals 2
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->createCopy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Collection;)Ljava/util/Collection;
move-result-object v0
invoke-virtual {p1, v0}, Lcom/esotericsoftware/kryo/Kryo;->reference(Ljava/lang/Object;)V
invoke-interface {p2}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object p2
:goto_0
invoke-interface {p2}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {p2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/Kryo;->copy(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
goto :goto_0
:cond_0
return-object v0
.end method
.method protected create(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Collection;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/Collection;",
">;)",
"Ljava/util/Collection;"
}
.end annotation
invoke-virtual {p1, p3}, Lcom/esotericsoftware/kryo/Kryo;->newInstance(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/Collection;
return-object p1
.end method
.method protected createCopy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Collection;)Ljava/util/Collection;
.locals 0
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->newInstance(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/Collection;
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Collection;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Collection;
.locals 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/Collection;",
">;)",
"Ljava/util/Collection;"
}
.end annotation
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->create(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Collection;
move-result-object p3
invoke-virtual {p1, p3}, Lcom/esotericsoftware/kryo/Kryo;->reference(Ljava/lang/Object;)V
const/4 v0, 0x1
invoke-virtual {p2, v0}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result v0
instance-of v1, p3, Ljava/util/ArrayList;
if-eqz v1, :cond_0
move-object v1, p3
check-cast v1, Ljava/util/ArrayList;
invoke-virtual {v1, v0}, Ljava/util/ArrayList;->ensureCapacity(I)V
:cond_0
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->elementClass:Ljava/lang/Class;
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
iget-object v3, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->genericType:Ljava/lang/Class;
if-eqz v3, :cond_2
if-nez v2, :cond_1
invoke-virtual {p1, v3}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v1
move-object v2, v1
move-object v1, v3
:cond_1
const/4 v3, 0x0
iput-object v3, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->genericType:Ljava/lang/Class;
:cond_2
const/4 v3, 0x0
if-eqz v2, :cond_4
iget-boolean v4, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->elementsCanBeNull:Z
if-eqz v4, :cond_3
:goto_0
if-ge v3, v0, :cond_5
invoke-virtual {p1, p2, v1, v2}, Lcom/esotericsoftware/kryo/Kryo;->readObjectOrNull(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v4
invoke-interface {p3, v4}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
add-int/lit8 v3, v3, 0x1
goto :goto_0
:cond_3
:goto_1
if-ge v3, v0, :cond_5
invoke-virtual {p1, p2, v1, v2}, Lcom/esotericsoftware/kryo/Kryo;->readObject(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v4
invoke-interface {p3, v4}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
add-int/lit8 v3, v3, 0x1
goto :goto_1
:cond_4
:goto_2
if-ge v3, v0, :cond_5
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClassAndObject(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object;
move-result-object v1
invoke-interface {p3, v1}, Ljava/util/Collection;->add(Ljava/lang/Object;)Z
add-int/lit8 v3, v3, 0x1
goto :goto_2
:cond_5
return-object p3
.end method
.method public setElementClass(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)V
.locals 0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->elementClass:Ljava/lang/Class;
iput-object p2, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
return-void
.end method
.method public setElementsCanBeNull(Z)V
.locals 0
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->elementsCanBeNull:Z
return-void
.end method
.method public setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
.locals 2
const/4 v0, 0x0
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->genericType:Ljava/lang/Class;
if-eqz p2, :cond_0
array-length v0, p2
if-lez v0, :cond_0
const/4 v0, 0x0
aget-object v1, p2, v0
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/Kryo;->isFinal(Ljava/lang/Class;)Z
move-result p1
if-eqz p1, :cond_0
aget-object p1, p2, v0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->genericType:Ljava/lang/Class;
:cond_0
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/Collection;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Collection;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Collection;)V
.locals 2
invoke-interface {p3}, Ljava/util/Collection;->size()I
move-result v0
const/4 v1, 0x1
invoke-virtual {p2, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->genericType:Ljava/lang/Class;
if-eqz v1, :cond_1
if-nez v0, :cond_0
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v0
:cond_0
const/4 v1, 0x0
iput-object v1, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->genericType:Ljava/lang/Class;
:cond_1
if-eqz v0, :cond_5
iget-boolean v1, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->elementsCanBeNull:Z
if-eqz v1, :cond_3
invoke-interface {p3}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object p3
:goto_0
invoke-interface {p3}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_2
invoke-interface {p3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
invoke-virtual {p1, p2, v1, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeObjectOrNull(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_0
:cond_2
return-void
:cond_3
invoke-interface {p3}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object p3
:goto_1
invoke-interface {p3}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_4
invoke-interface {p3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
invoke-virtual {p1, p2, v1, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_1
:cond_4
return-void
:cond_5
invoke-interface {p3}, Ljava/util/Collection;->iterator()Ljava/util/Iterator;
move-result-object p3
:goto_2
invoke-interface {p3}, Ljava/util/Iterator;->hasNext()Z
move-result v0
if-eqz v0, :cond_6
invoke-interface {p3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
invoke-virtual {p1, p2, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
goto :goto_2
:cond_6
return-void
.end method

View file

@ -0,0 +1,463 @@
.class public Lcom/esotericsoftware/kryo/serializers/CompatibleFieldSerializer;
.super Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
.source "CompatibleFieldSerializer.java"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"<T:",
"Ljava/lang/Object;",
">",
"Lcom/esotericsoftware/kryo/serializers/FieldSerializer<",
"TT;>;"
}
.end annotation
# static fields
.field private static final THRESHOLD_BINARY_SEARCH:I = 0x20
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;)V
.locals 0
invoke-direct {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;-><init>(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 17
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"TT;>;)TT;"
}
.end annotation
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-virtual/range {p0 .. p3}, Lcom/esotericsoftware/kryo/serializers/CompatibleFieldSerializer;->create(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object v2
move-object/from16 v3, p1
invoke-virtual {v3, v2}, Lcom/esotericsoftware/kryo/Kryo;->reference(Ljava/lang/Object;)V
invoke-virtual/range {p1 .. p1}, Lcom/esotericsoftware/kryo/Kryo;->getGraphContext()Lcom/esotericsoftware/kryo/util/ObjectMap;
move-result-object v3
invoke-virtual {v3, v0}, Lcom/esotericsoftware/kryo/util/ObjectMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v4
check-cast v4, [Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
check-cast v4, [Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
const-string v5, "kryo"
const/4 v7, 0x1
if-nez v4, :cond_c
invoke-virtual {v1, v7}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result v4
sget-boolean v8, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v8, :cond_0
new-instance v8, Ljava/lang/StringBuilder;
const-string v9, "Read "
invoke-direct {v8, v9}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v8, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v9, " field names."
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v8
invoke-static {v5, v8}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
new-array v8, v4, [Ljava/lang/String;
const/4 v9, 0x0
:goto_0
if-ge v9, v4, :cond_1
invoke-virtual/range {p2 .. p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object v10
aput-object v10, v8, v9
add-int/lit8 v9, v9, 0x1
goto :goto_0
:cond_1
new-array v9, v4, [Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
invoke-virtual/range {p0 .. p0}, Lcom/esotericsoftware/kryo/serializers/CompatibleFieldSerializer;->getFields()[Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v10
const/16 v11, 0x20
const-string v12, "Ignore obsolete field: "
if-ge v4, v11, :cond_5
const/4 v11, 0x0
:goto_1
if-ge v11, v4, :cond_b
aget-object v13, v8, v11
array-length v14, v10
const/4 v15, 0x0
:goto_2
if-ge v15, v14, :cond_3
aget-object v6, v10, v15
invoke-virtual {v0, v6}, Lcom/esotericsoftware/kryo/serializers/CompatibleFieldSerializer;->getCachedFieldName(Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;)Ljava/lang/String;
move-result-object v6
invoke-virtual {v6, v13}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result v6
if-eqz v6, :cond_2
aget-object v6, v10, v15
aput-object v6, v9, v11
goto :goto_3
:cond_2
add-int/lit8 v15, v15, 0x1
goto :goto_2
:cond_3
sget-boolean v6, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v6, :cond_4
invoke-static {v13}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v6
invoke-virtual {v12, v6}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v6
invoke-static {v5, v6}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_4
:goto_3
add-int/lit8 v11, v11, 0x1
goto :goto_1
:cond_5
array-length v6, v10
if-le v6, v4, :cond_6
array-length v6, v10
goto :goto_4
:cond_6
move v6, v4
:goto_4
const/4 v11, 0x0
:goto_5
if-ge v11, v4, :cond_b
aget-object v13, v8, v11
add-int/lit8 v14, v6, -0x1
move v15, v14
const/4 v14, 0x0
:goto_6
if-gt v14, v15, :cond_9
add-int v16, v14, v15
ushr-int/lit8 v16, v16, 0x1
aget-object v7, v10, v16
invoke-virtual {v0, v7}, Lcom/esotericsoftware/kryo/serializers/CompatibleFieldSerializer;->getCachedFieldName(Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;)Ljava/lang/String;
move-result-object v7
invoke-virtual {v13, v7}, Ljava/lang/String;->compareTo(Ljava/lang/String;)I
move-result v7
if-gez v7, :cond_7
add-int/lit8 v15, v16, -0x1
:goto_7
const/4 v7, 0x1
goto :goto_6
:cond_7
if-lez v7, :cond_8
add-int/lit8 v14, v16, 0x1
goto :goto_7
:cond_8
aget-object v7, v10, v16
aput-object v7, v9, v11
goto :goto_8
:cond_9
sget-boolean v7, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v7, :cond_a
invoke-static {v13}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object v7
invoke-virtual {v12, v7}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object v7
invoke-static {v5, v7}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_a
:goto_8
add-int/lit8 v11, v11, 0x1
const/4 v7, 0x1
goto :goto_5
:cond_b
invoke-virtual {v3, v0, v9}, Lcom/esotericsoftware/kryo/util/ObjectMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
move-object v4, v9
:cond_c
new-instance v3, Lcom/esotericsoftware/kryo/io/InputChunked;
const/16 v6, 0x400
invoke-direct {v3, v1, v6}, Lcom/esotericsoftware/kryo/io/InputChunked;-><init>(Ljava/io/InputStream;I)V
invoke-virtual/range {p0 .. p0}, Lcom/esotericsoftware/kryo/serializers/CompatibleFieldSerializer;->getGenerics()[Ljava/lang/Class;
move-result-object v1
if-eqz v1, :cond_d
const/4 v1, 0x1
goto :goto_9
:cond_d
const/4 v1, 0x0
:goto_9
array-length v6, v4
const/4 v7, 0x0
:goto_a
if-ge v7, v6, :cond_11
aget-object v8, v4, v7
if-eqz v8, :cond_e
if-eqz v1, :cond_e
invoke-virtual {v0, v8}, Lcom/esotericsoftware/kryo/serializers/CompatibleFieldSerializer;->getCachedFieldName(Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;)Ljava/lang/String;
move-result-object v8
invoke-virtual {v0, v8}, Lcom/esotericsoftware/kryo/serializers/CompatibleFieldSerializer;->getField(Ljava/lang/String;)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v8
:cond_e
if-nez v8, :cond_10
sget-boolean v8, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v8, :cond_f
const-string v8, "Skip obsolete field."
invoke-static {v5, v8}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_f
invoke-virtual {v3}, Lcom/esotericsoftware/kryo/io/InputChunked;->nextChunks()V
goto :goto_b
:cond_10
invoke-virtual {v8, v3, v2}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
invoke-virtual {v3}, Lcom/esotericsoftware/kryo/io/InputChunked;->nextChunks()V
:goto_b
add-int/lit8 v7, v7, 0x1
goto :goto_a
:cond_11
return-object v2
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Output;",
"TT;)V"
}
.end annotation
invoke-virtual {p0}, Lcom/esotericsoftware/kryo/serializers/CompatibleFieldSerializer;->getFields()[Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/Kryo;->getGraphContext()Lcom/esotericsoftware/kryo/util/ObjectMap;
move-result-object p1
invoke-virtual {p1, p0}, Lcom/esotericsoftware/kryo/util/ObjectMap;->containsKey(Ljava/lang/Object;)Z
move-result v1
const/4 v2, 0x0
if-nez v1, :cond_1
const/4 v1, 0x0
invoke-virtual {p1, p0, v1}, Lcom/esotericsoftware/kryo/util/ObjectMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
sget-boolean p1, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz p1, :cond_0
new-instance p1, Ljava/lang/StringBuilder;
const-string v1, "Write "
invoke-direct {p1, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
array-length v1, v0
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
const-string v1, " field names."
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string v1, "kryo"
invoke-static {v1, p1}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
array-length p1, v0
const/4 v1, 0x1
invoke-virtual {p2, p1, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
array-length p1, v0
const/4 v1, 0x0
:goto_0
if-ge v1, p1, :cond_1
aget-object v3, v0, v1
invoke-virtual {p0, v3}, Lcom/esotericsoftware/kryo/serializers/CompatibleFieldSerializer;->getCachedFieldName(Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;)Ljava/lang/String;
move-result-object v3
invoke-virtual {p2, v3}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/String;)V
add-int/lit8 v1, v1, 0x1
goto :goto_0
:cond_1
new-instance p1, Lcom/esotericsoftware/kryo/io/OutputChunked;
const/16 v1, 0x400
invoke-direct {p1, p2, v1}, Lcom/esotericsoftware/kryo/io/OutputChunked;-><init>(Ljava/io/OutputStream;I)V
array-length p2, v0
:goto_1
if-ge v2, p2, :cond_2
aget-object v1, v0, v2
invoke-virtual {v1, p1, p3}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/OutputChunked;->endChunks()V
add-int/lit8 v2, v2, 0x1
goto :goto_1
:cond_2
return-void
.end method

View file

@ -0,0 +1,170 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$BooleanArraySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "BooleanArraySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"[Z>;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$BooleanArraySerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, [Z
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$BooleanArraySerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;[Z)[Z
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;[Z)[Z
.locals 2
array-length p1, p2
new-array p1, p1, [Z
array-length v0, p1
const/4 v1, 0x0
invoke-static {p2, v1, p1, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$BooleanArraySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[Z
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[Z
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"[Z>;)[Z"
}
.end annotation
const/4 p1, 0x1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result p1
if-nez p1, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
add-int/lit8 p1, p1, -0x1
new-array p3, p1, [Z
const/4 v0, 0x0
:goto_0
if-ge v0, p1, :cond_1
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readBoolean()Z
move-result v1
aput-boolean v1, p3, v0
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_1
return-object p3
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, [Z
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$BooleanArraySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[Z)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[Z)V
.locals 2
const/4 p1, 0x0
const/4 v0, 0x1
if-nez p3, :cond_0
invoke-virtual {p2, p1, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
array-length v1, p3
add-int/2addr v1, v0
invoke-virtual {p2, v1, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
array-length v0, p3
:goto_0
if-ge p1, v0, :cond_1
aget-boolean v1, p3, p1
invoke-virtual {p2, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeBoolean(Z)V
add-int/lit8 p1, p1, 0x1
goto :goto_0
:cond_1
return-void
.end method

View file

@ -0,0 +1,144 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ByteArraySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ByteArraySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"[B>;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ByteArraySerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, [B
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ByteArraySerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;[B)[B
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;[B)[B
.locals 2
array-length p1, p2
new-array p1, p1, [B
array-length v0, p1
const/4 v1, 0x0
invoke-static {p2, v1, p1, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ByteArraySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[B
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[B
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"[B>;)[B"
}
.end annotation
const/4 p1, 0x1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result p3
if-nez p3, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
sub-int/2addr p3, p1
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Input;->readBytes(I)[B
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, [B
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ByteArraySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[B)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[B)V
.locals 1
const/4 p1, 0x1
if-nez p3, :cond_0
const/4 p3, 0x0
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
array-length v0, p3
add-int/2addr v0, p1
invoke-virtual {p2, v0, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Output;->writeBytes([B)V
return-void
.end method

View file

@ -0,0 +1,144 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$CharArraySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CharArraySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"[C>;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$CharArraySerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, [C
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$CharArraySerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;[C)[C
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;[C)[C
.locals 2
array-length p1, p2
new-array p1, p1, [C
array-length v0, p1
const/4 v1, 0x0
invoke-static {p2, v1, p1, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$CharArraySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[C
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[C
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"[C>;)[C"
}
.end annotation
const/4 p1, 0x1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result p3
if-nez p3, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
sub-int/2addr p3, p1
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Input;->readChars(I)[C
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, [C
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$CharArraySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[C)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[C)V
.locals 1
const/4 p1, 0x1
if-nez p3, :cond_0
const/4 p3, 0x0
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
array-length v0, p3
add-int/2addr v0, p1
invoke-virtual {p2, v0, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Output;->writeChars([C)V
return-void
.end method

View file

@ -0,0 +1,144 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$DoubleArraySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "DoubleArraySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"[D>;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$DoubleArraySerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, [D
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$DoubleArraySerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;[D)[D
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;[D)[D
.locals 2
array-length p1, p2
new-array p1, p1, [D
array-length v0, p1
const/4 v1, 0x0
invoke-static {p2, v1, p1, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$DoubleArraySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[D
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[D
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"[D>;)[D"
}
.end annotation
const/4 p1, 0x1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result p3
if-nez p3, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
sub-int/2addr p3, p1
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Input;->readDoubles(I)[D
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, [D
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$DoubleArraySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[D)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[D)V
.locals 1
const/4 p1, 0x1
if-nez p3, :cond_0
const/4 p3, 0x0
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
array-length v0, p3
add-int/2addr v0, p1
invoke-virtual {p2, v0, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Output;->writeDoubles([D)V
return-void
.end method

View file

@ -0,0 +1,144 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$FloatArraySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "FloatArraySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"[F>;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$FloatArraySerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, [F
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$FloatArraySerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;[F)[F
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;[F)[F
.locals 2
array-length p1, p2
new-array p1, p1, [F
array-length v0, p1
const/4 v1, 0x0
invoke-static {p2, v1, p1, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$FloatArraySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[F
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[F
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"[F>;)[F"
}
.end annotation
const/4 p1, 0x1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result p3
if-nez p3, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
sub-int/2addr p3, p1
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Input;->readFloats(I)[F
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, [F
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$FloatArraySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[F)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[F)V
.locals 1
const/4 p1, 0x1
if-nez p3, :cond_0
const/4 p3, 0x0
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
array-length v0, p3
add-int/2addr v0, p1
invoke-virtual {p2, v0, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Output;->writeFloats([F)V
return-void
.end method

View file

@ -0,0 +1,146 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$IntArraySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "IntArraySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"[I>;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$IntArraySerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, [I
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$IntArraySerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;[I)[I
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;[I)[I
.locals 2
array-length p1, p2
new-array p1, p1, [I
array-length v0, p1
const/4 v1, 0x0
invoke-static {p2, v1, p1, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$IntArraySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[I
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[I
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"[I>;)[I"
}
.end annotation
const/4 p1, 0x1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result p3
if-nez p3, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
sub-int/2addr p3, p1
const/4 p1, 0x0
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Input;->readInts(IZ)[I
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, [I
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$IntArraySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[I)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[I)V
.locals 2
const/4 p1, 0x0
const/4 v0, 0x1
if-nez p3, :cond_0
invoke-virtual {p2, p1, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
array-length v1, p3
add-int/2addr v1, v0
invoke-virtual {p2, v1, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeInts([IZ)V
return-void
.end method

View file

@ -0,0 +1,146 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$LongArraySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "LongArraySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"[J>;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$LongArraySerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, [J
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$LongArraySerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;[J)[J
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;[J)[J
.locals 2
array-length p1, p2
new-array p1, p1, [J
array-length v0, p1
const/4 v1, 0x0
invoke-static {p2, v1, p1, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$LongArraySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[J
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[J
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"[J>;)[J"
}
.end annotation
const/4 p1, 0x1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result p3
if-nez p3, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
sub-int/2addr p3, p1
const/4 p1, 0x0
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Input;->readLongs(IZ)[J
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, [J
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$LongArraySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[J)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[J)V
.locals 2
const/4 p1, 0x0
const/4 v0, 0x1
if-nez p3, :cond_0
invoke-virtual {p2, p1, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
array-length v1, p3
add-int/2addr v1, v0
invoke-virtual {p2, v1, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeLongs([JZ)V
return-void
.end method

View file

@ -0,0 +1,465 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ObjectArraySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"[",
"Ljava/lang/Object;",
">;"
}
.end annotation
# instance fields
.field private elementsAreSameType:Z
.field private elementsCanBeNull:Z
.field private generics:[Ljava/lang/Class;
.field private final type:Ljava/lang/Class;
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;)V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 p1, 0x1
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->elementsCanBeNull:Z
invoke-virtual {p0, p1}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->setAcceptsNull(Z)V
iput-object p2, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->type:Ljava/lang/Class;
invoke-virtual {p2}, Ljava/lang/Class;->getComponentType()Ljava/lang/Class;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/Class;->getModifiers()I
move-result p2
and-int/lit8 p2, p2, 0x10
if-eqz p2, :cond_0
const/4 p2, 0x1
goto :goto_0
:cond_0
const/4 p2, 0x0
:goto_0
if-eqz p2, :cond_1
invoke-virtual {p0, p1}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->setElementsAreSameType(Z)V
:cond_1
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, [Ljava/lang/Object;
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Object;)[Ljava/lang/Object;
.locals 4
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Class;->getComponentType()Ljava/lang/Class;
move-result-object v0
array-length v1, p2
invoke-static {v0, v1}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;I)Ljava/lang/Object;
move-result-object v0
check-cast v0, [Ljava/lang/Object;
check-cast v0, [Ljava/lang/Object;
array-length v1, p2
const/4 v2, 0x0
:goto_0
if-ge v2, v1, :cond_0
aget-object v3, p2, v2
invoke-virtual {p1, v3}, Lcom/esotericsoftware/kryo/Kryo;->copy(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v3
aput-object v3, v0, v2
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_0
return-object v0
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[Ljava/lang/Object;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[Ljava/lang/Object;
.locals 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"[",
"Ljava/lang/Object;",
">;)[",
"Ljava/lang/Object;"
}
.end annotation
const/4 v0, 0x1
invoke-virtual {p2, v0}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result v1
const/4 v2, 0x0
if-nez v1, :cond_0
return-object v2
:cond_0
invoke-virtual {p3}, Ljava/lang/Class;->getComponentType()Ljava/lang/Class;
move-result-object p3
sub-int/2addr v1, v0
invoke-static {p3, v1}, Ljava/lang/reflect/Array;->newInstance(Ljava/lang/Class;I)Ljava/lang/Object;
move-result-object p3
check-cast p3, [Ljava/lang/Object;
check-cast p3, [Ljava/lang/Object;
invoke-virtual {p1, p3}, Lcom/esotericsoftware/kryo/Kryo;->reference(Ljava/lang/Object;)V
invoke-virtual {p3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Class;->getComponentType()Ljava/lang/Class;
move-result-object v0
iget-boolean v1, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->elementsAreSameType:Z
const/4 v3, 0x0
if-nez v1, :cond_3
invoke-virtual {v0}, Ljava/lang/Class;->getModifiers()I
move-result v1
invoke-static {v1}, Ljava/lang/reflect/Modifier;->isFinal(I)Z
move-result v1
if-eqz v1, :cond_1
goto :goto_2
:cond_1
array-length v0, p3
:goto_0
if-ge v3, v0, :cond_5
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClass(Lcom/esotericsoftware/kryo/io/Input;)Lcom/esotericsoftware/kryo/Registration;
move-result-object v1
if-eqz v1, :cond_2
invoke-virtual {v1}, Lcom/esotericsoftware/kryo/Registration;->getSerializer()Lcom/esotericsoftware/kryo/Serializer;
move-result-object v4
iget-object v5, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->generics:[Ljava/lang/Class;
invoke-virtual {v4, p1, v5}, Lcom/esotericsoftware/kryo/Serializer;->setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
invoke-virtual {v1}, Lcom/esotericsoftware/kryo/Registration;->getType()Ljava/lang/Class;
move-result-object v4
invoke-virtual {v1}, Lcom/esotericsoftware/kryo/Registration;->getSerializer()Lcom/esotericsoftware/kryo/Serializer;
move-result-object v1
invoke-virtual {p1, p2, v4, v1}, Lcom/esotericsoftware/kryo/Kryo;->readObject(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v1
aput-object v1, p3, v3
goto :goto_1
:cond_2
aput-object v2, p3, v3
:goto_1
add-int/lit8 v3, v3, 0x1
goto :goto_0
:cond_3
:goto_2
invoke-virtual {p1, v0}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v1
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->generics:[Ljava/lang/Class;
invoke-virtual {v1, p1, v2}, Lcom/esotericsoftware/kryo/Serializer;->setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
array-length v2, p3
:goto_3
if-ge v3, v2, :cond_5
iget-boolean v4, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->elementsCanBeNull:Z
if-eqz v4, :cond_4
invoke-virtual {p1, p2, v0, v1}, Lcom/esotericsoftware/kryo/Kryo;->readObjectOrNull(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v4
aput-object v4, p3, v3
goto :goto_4
:cond_4
invoke-virtual {p1, p2, v0, v1}, Lcom/esotericsoftware/kryo/Kryo;->readObject(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v4
aput-object v4, p3, v3
:goto_4
add-int/lit8 v3, v3, 0x1
goto :goto_3
:cond_5
return-object p3
.end method
.method public setElementsAreSameType(Z)V
.locals 0
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->elementsAreSameType:Z
return-void
.end method
.method public setElementsCanBeNull(Z)V
.locals 0
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->elementsCanBeNull:Z
return-void
.end method
.method public setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
.locals 1
sget-boolean p1, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz p1, :cond_0
const-string p1, "kryo"
const-string v0, "setting generics for ObjectArraySerializer"
invoke-static {p1, v0}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
iput-object p2, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->generics:[Ljava/lang/Class;
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, [Ljava/lang/Object;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[Ljava/lang/Object;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[Ljava/lang/Object;)V
.locals 4
const/4 v0, 0x0
const/4 v1, 0x1
if-nez p3, :cond_0
invoke-virtual {p2, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
array-length v2, p3
add-int/2addr v2, v1
invoke-virtual {p2, v2, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->getComponentType()Ljava/lang/Class;
move-result-object v1
iget-boolean v2, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->elementsAreSameType:Z
if-nez v2, :cond_4
invoke-virtual {v1}, Ljava/lang/Class;->getModifiers()I
move-result v2
invoke-static {v2}, Ljava/lang/reflect/Modifier;->isFinal(I)Z
move-result v2
if-eqz v2, :cond_1
goto :goto_1
:cond_1
array-length v1, p3
:goto_0
if-ge v0, v1, :cond_3
aget-object v2, p3, v0
if-eqz v2, :cond_2
aget-object v2, p3, v0
invoke-virtual {v2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v2
invoke-virtual {p1, v2}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v2
iget-object v3, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->generics:[Ljava/lang/Class;
invoke-virtual {v2, p1, v3}, Lcom/esotericsoftware/kryo/Serializer;->setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
:cond_2
aget-object v2, p3, v0
invoke-virtual {p1, p2, v2}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_3
return-void
:cond_4
:goto_1
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v1
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->generics:[Ljava/lang/Class;
invoke-virtual {v1, p1, v2}, Lcom/esotericsoftware/kryo/Serializer;->setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
array-length v2, p3
:goto_2
if-ge v0, v2, :cond_6
iget-boolean v3, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->elementsCanBeNull:Z
if-eqz v3, :cond_5
aget-object v3, p3, v0
invoke-virtual {p1, p2, v3, v1}, Lcom/esotericsoftware/kryo/Kryo;->writeObjectOrNull(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_3
:cond_5
aget-object v3, p3, v0
invoke-virtual {p1, p2, v3, v1}, Lcom/esotericsoftware/kryo/Kryo;->writeObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
:goto_3
add-int/lit8 v0, v0, 0x1
goto :goto_2
:cond_6
return-void
.end method

View file

@ -0,0 +1,144 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ShortArraySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ShortArraySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"[S>;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ShortArraySerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, [S
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ShortArraySerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;[S)[S
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;[S)[S
.locals 2
array-length p1, p2
new-array p1, p1, [S
array-length v0, p1
const/4 v1, 0x0
invoke-static {p2, v1, p1, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ShortArraySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[S
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[S
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"[S>;)[S"
}
.end annotation
const/4 p1, 0x1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result p3
if-nez p3, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
sub-int/2addr p3, p1
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Input;->readShorts(I)[S
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, [S
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ShortArraySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[S)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[S)V
.locals 1
const/4 p1, 0x1
if-nez p3, :cond_0
const/4 p3, 0x0
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
array-length v0, p3
add-int/2addr v0, p1
invoke-virtual {p2, v0, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Output;->writeShorts([S)V
return-void
.end method

View file

@ -0,0 +1,258 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$StringArraySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "StringArraySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"[",
"Ljava/lang/String;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$StringArraySerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, [Ljava/lang/String;
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$StringArraySerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/String;)[Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/String;)[Ljava/lang/String;
.locals 2
array-length p1, p2
new-array p1, p1, [Ljava/lang/String;
array-length v0, p1
const/4 v1, 0x0
invoke-static {p2, v1, p1, v1, v0}, Ljava/lang/System;->arraycopy(Ljava/lang/Object;ILjava/lang/Object;II)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$StringArraySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)[Ljava/lang/String;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"[",
"Ljava/lang/String;",
">;)[",
"Ljava/lang/String;"
}
.end annotation
const/4 p3, 0x1
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result p3
if-nez p3, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
add-int/lit8 p3, p3, -0x1
new-array v0, p3, [Ljava/lang/String;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/Kryo;->getReferences()Z
move-result v1
const/4 v2, 0x0
if-eqz v1, :cond_1
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/Kryo;->getReferenceResolver()Lcom/esotericsoftware/kryo/ReferenceResolver;
move-result-object v1
const-class v3, Ljava/lang/String;
invoke-interface {v1, v3}, Lcom/esotericsoftware/kryo/ReferenceResolver;->useReferences(Ljava/lang/Class;)Z
move-result v1
if-eqz v1, :cond_1
const-class v1, Ljava/lang/String;
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v1
:goto_0
if-ge v2, p3, :cond_2
const-class v3, Ljava/lang/String;
invoke-virtual {p1, p2, v3, v1}, Lcom/esotericsoftware/kryo/Kryo;->readObjectOrNull(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v3
check-cast v3, Ljava/lang/String;
aput-object v3, v0, v2
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_1
:goto_1
if-ge v2, p3, :cond_2
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p1
aput-object p1, v0, v2
add-int/lit8 v2, v2, 0x1
goto :goto_1
:cond_2
return-object v0
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, [Ljava/lang/String;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$StringArraySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[Ljava/lang/String;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;[Ljava/lang/String;)V
.locals 4
const/4 v0, 0x0
const/4 v1, 0x1
if-nez p3, :cond_0
invoke-virtual {p2, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
array-length v2, p3
add-int/2addr v2, v1
invoke-virtual {p2, v2, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/Kryo;->getReferences()Z
move-result v1
if-eqz v1, :cond_2
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/Kryo;->getReferenceResolver()Lcom/esotericsoftware/kryo/ReferenceResolver;
move-result-object v1
const-class v2, Ljava/lang/String;
invoke-interface {v1, v2}, Lcom/esotericsoftware/kryo/ReferenceResolver;->useReferences(Ljava/lang/Class;)Z
move-result v1
if-eqz v1, :cond_2
const-class v1, Ljava/lang/String;
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v1
array-length v2, p3
:goto_0
if-ge v0, v2, :cond_1
aget-object v3, p3, v0
invoke-virtual {p1, p2, v3, v1}, Lcom/esotericsoftware/kryo/Kryo;->writeObjectOrNull(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
add-int/lit8 v0, v0, 0x1
goto :goto_0
:cond_1
return-void
:cond_2
array-length p1, p3
:goto_1
if-ge v0, p1, :cond_3
aget-object v1, p3, v0
invoke-virtual {p2, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/String;)V
add-int/lit8 v0, v0, 0x1
goto :goto_1
:cond_3
return-void
.end method

View file

@ -0,0 +1,30 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers;
.super Ljava/lang/Object;
.source "DefaultArraySerializers.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$StringArraySerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$BooleanArraySerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$DoubleArraySerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$CharArraySerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ShortArraySerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$LongArraySerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$FloatArraySerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$IntArraySerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ByteArraySerializer;
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method

View file

@ -0,0 +1,241 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigDecimalSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "BigDecimalSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/math/BigDecimal;",
">;"
}
.end annotation
# instance fields
.field private final bigIntegerSerializer:Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
new-instance v0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;
invoke-direct {v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;-><init>()V
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigDecimalSerializer;->bigIntegerSerializer:Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigDecimalSerializer;->setAcceptsNull(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigDecimalSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigDecimalSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/math/BigDecimal;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/math/BigDecimal;
.locals 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/math/BigDecimal;",
">;)",
"Ljava/math/BigDecimal;"
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigDecimalSerializer;->bigIntegerSerializer:Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;
const-class v1, Ljava/math/BigInteger;
invoke-virtual {v0, p1, p2, v1}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/math/BigInteger;
move-result-object p1
if-nez p1, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
const/4 v0, 0x0
invoke-virtual {p2, v0}, Lcom/esotericsoftware/kryo/io/Input;->readInt(Z)I
move-result p2
const-class v1, Ljava/math/BigDecimal;
if-eq p3, v1, :cond_2
if-eqz p3, :cond_2
const/4 v1, 0x2
:try_start_0
new-array v2, v1, [Ljava/lang/Class;
const-class v3, Ljava/math/BigInteger;
aput-object v3, v2, v0
sget-object v3, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
const/4 v4, 0x1
aput-object v3, v2, v4
invoke-virtual {p3, v2}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object p3
invoke-virtual {p3}, Ljava/lang/reflect/Constructor;->isAccessible()Z
move-result v2
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1
if-nez v2, :cond_1
:try_start_1
invoke-virtual {p3, v4}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V
:try_end_1
.catch Ljava/lang/SecurityException; {:try_start_1 .. :try_end_1} :catch_0
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1
:catch_0
:cond_1
:try_start_2
new-array v1, v1, [Ljava/lang/Object;
aput-object p1, v1, v0
invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
aput-object p1, v1, v4
invoke-virtual {p3, v1}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/math/BigDecimal;
:try_end_2
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_1
return-object p1
:catch_1
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
:cond_2
sget-object p3, Ljava/math/BigInteger;->ZERO:Ljava/math/BigInteger;
if-ne p1, p3, :cond_3
if-nez p2, :cond_3
sget-object p1, Ljava/math/BigDecimal;->ZERO:Ljava/math/BigDecimal;
return-object p1
:cond_3
new-instance p3, Ljava/math/BigDecimal;
invoke-direct {p3, p1, p2}, Ljava/math/BigDecimal;-><init>(Ljava/math/BigInteger;I)V
return-object p3
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/math/BigDecimal;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigDecimalSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/math/BigDecimal;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/math/BigDecimal;)V
.locals 3
const/4 v0, 0x0
if-nez p3, :cond_0
const/4 p1, 0x1
invoke-virtual {p2, v0, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
sget-object v1, Ljava/math/BigDecimal;->ZERO:Ljava/math/BigDecimal;
if-ne p3, v1, :cond_1
iget-object p3, p0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigDecimalSerializer;->bigIntegerSerializer:Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;
sget-object v1, Ljava/math/BigInteger;->ZERO:Ljava/math/BigInteger;
invoke-virtual {p3, p1, p2, v1}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/math/BigInteger;)V
invoke-virtual {p2, v0, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(IZ)I
return-void
:cond_1
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigDecimalSerializer;->bigIntegerSerializer:Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;
invoke-virtual {p3}, Ljava/math/BigDecimal;->unscaledValue()Ljava/math/BigInteger;
move-result-object v2
invoke-virtual {v1, p1, p2, v2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/math/BigInteger;)V
invoke-virtual {p3}, Ljava/math/BigDecimal;->scale()I
move-result p1
invoke-virtual {p2, p1, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(IZ)I
return-void
.end method

View file

@ -0,0 +1,235 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "BigIntegerSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/math/BigInteger;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;->setImmutable(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/math/BigInteger;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/math/BigInteger;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/math/BigInteger;",
">;)",
"Ljava/math/BigInteger;"
}
.end annotation
const/4 p1, 0x1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result v0
if-nez v0, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
add-int/lit8 v1, v0, -0x1
invoke-virtual {p2, v1}, Lcom/esotericsoftware/kryo/io/Input;->readBytes(I)[B
move-result-object p2
const-class v1, Ljava/math/BigInteger;
const/4 v2, 0x0
if-eq p3, v1, :cond_2
if-eqz p3, :cond_2
:try_start_0
new-array v0, p1, [Ljava/lang/Class;
const-class v1, [B
aput-object v1, v0, v2
invoke-virtual {p3, v0}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object p3
invoke-virtual {p3}, Ljava/lang/reflect/Constructor;->isAccessible()Z
move-result v0
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1
if-nez v0, :cond_1
:try_start_1
invoke-virtual {p3, p1}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V
:try_end_1
.catch Ljava/lang/SecurityException; {:try_start_1 .. :try_end_1} :catch_0
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1
:catch_0
:cond_1
:try_start_2
new-array p1, p1, [Ljava/lang/Object;
aput-object p2, p1, v2
invoke-virtual {p3, p1}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/math/BigInteger;
:try_end_2
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_1
return-object p1
:catch_1
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
:cond_2
const/4 p3, 0x2
if-ne v0, p3, :cond_6
aget-byte p3, p2, v2
if-eqz p3, :cond_5
if-eq p3, p1, :cond_4
const/16 p1, 0xa
if-eq p3, p1, :cond_3
goto :goto_0
:cond_3
sget-object p1, Ljava/math/BigInteger;->TEN:Ljava/math/BigInteger;
return-object p1
:cond_4
sget-object p1, Ljava/math/BigInteger;->ONE:Ljava/math/BigInteger;
return-object p1
:cond_5
sget-object p1, Ljava/math/BigInteger;->ZERO:Ljava/math/BigInteger;
return-object p1
:cond_6
:goto_0
new-instance p1, Ljava/math/BigInteger;
invoke-direct {p1, p2}, Ljava/math/BigInteger;-><init>([B)V
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/math/BigInteger;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/math/BigInteger;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/math/BigInteger;)V
.locals 2
const/4 p1, 0x0
const/4 v0, 0x1
if-nez p3, :cond_0
invoke-virtual {p2, p1, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
sget-object v1, Ljava/math/BigInteger;->ZERO:Ljava/math/BigInteger;
if-ne p3, v1, :cond_1
const/4 p3, 0x2
invoke-virtual {p2, p3, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeByte(I)V
return-void
:cond_1
invoke-virtual {p3}, Ljava/math/BigInteger;->toByteArray()[B
move-result-object p1
array-length p3, p1
add-int/2addr p3, v0
invoke-virtual {p2, p3, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeBytes([B)V
return-void
.end method

View file

@ -0,0 +1,95 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BooleanSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "BooleanSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Boolean;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BooleanSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Boolean;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Boolean;",
">;)",
"Ljava/lang/Boolean;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readBoolean()Z
move-result p1
invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BooleanSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Boolean;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Boolean;)V
.locals 0
invoke-virtual {p3}, Ljava/lang/Boolean;->booleanValue()Z
move-result p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeBoolean(Z)V
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Boolean;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BooleanSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Boolean;)V
return-void
.end method

View file

@ -0,0 +1,95 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ByteSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ByteSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Byte;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ByteSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Byte;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Byte;",
">;)",
"Ljava/lang/Byte;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readByte()B
move-result p1
invoke-static {p1}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ByteSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Byte;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Byte;)V
.locals 0
invoke-virtual {p3}, Ljava/lang/Byte;->byteValue()B
move-result p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeByte(B)V
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Byte;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ByteSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Byte;)V
return-void
.end method

View file

@ -0,0 +1,239 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CalendarSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CalendarSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/Calendar;",
">;"
}
.end annotation
# static fields
.field private static final DEFAULT_GREGORIAN_CUTOVER:J = -0xb1d069b5400L
# instance fields
.field timeZoneSerializer:Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
new-instance v0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;
invoke-direct {v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;-><init>()V
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CalendarSerializer;->timeZoneSerializer:Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, Ljava/util/Calendar;
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CalendarSerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Calendar;)Ljava/util/Calendar;
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Calendar;)Ljava/util/Calendar;
.locals 0
invoke-virtual {p2}, Ljava/util/Calendar;->clone()Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/Calendar;
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CalendarSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Calendar;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Calendar;
.locals 3
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/Calendar;",
">;)",
"Ljava/util/Calendar;"
}
.end annotation
iget-object p3, p0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CalendarSerializer;->timeZoneSerializer:Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;
const-class v0, Ljava/util/TimeZone;
invoke-virtual {p3, p1, p2, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/TimeZone;
move-result-object p1
invoke-static {p1}, Ljava/util/Calendar;->getInstance(Ljava/util/TimeZone;)Ljava/util/Calendar;
move-result-object p1
const/4 p3, 0x1
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Input;->readLong(Z)J
move-result-wide v0
invoke-virtual {p1, v0, v1}, Ljava/util/Calendar;->setTimeInMillis(J)V
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readBoolean()Z
move-result v0
invoke-virtual {p1, v0}, Ljava/util/Calendar;->setLenient(Z)V
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Input;->readInt(Z)I
move-result v0
invoke-virtual {p1, v0}, Ljava/util/Calendar;->setFirstDayOfWeek(I)V
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Input;->readInt(Z)I
move-result p3
invoke-virtual {p1, p3}, Ljava/util/Calendar;->setMinimalDaysInFirstWeek(I)V
const/4 p3, 0x0
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Input;->readLong(Z)J
move-result-wide p2
const-wide v0, -0xb1d069b5400L
cmp-long v2, p2, v0
if-eqz v2, :cond_0
instance-of v0, p1, Ljava/util/GregorianCalendar;
if-eqz v0, :cond_0
move-object v0, p1
check-cast v0, Ljava/util/GregorianCalendar;
new-instance v1, Ljava/util/Date;
invoke-direct {v1, p2, p3}, Ljava/util/Date;-><init>(J)V
invoke-virtual {v0, v1}, Ljava/util/GregorianCalendar;->setGregorianChange(Ljava/util/Date;)V
:cond_0
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/Calendar;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CalendarSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Calendar;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Calendar;)V
.locals 3
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CalendarSerializer;->timeZoneSerializer:Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;
invoke-virtual {p3}, Ljava/util/Calendar;->getTimeZone()Ljava/util/TimeZone;
move-result-object v1
invoke-virtual {v0, p1, p2, v1}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/TimeZone;)V
invoke-virtual {p3}, Ljava/util/Calendar;->getTimeInMillis()J
move-result-wide v0
const/4 p1, 0x1
invoke-virtual {p2, v0, v1, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(JZ)I
invoke-virtual {p3}, Ljava/util/Calendar;->isLenient()Z
move-result v0
invoke-virtual {p2, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeBoolean(Z)V
invoke-virtual {p3}, Ljava/util/Calendar;->getFirstDayOfWeek()I
move-result v0
invoke-virtual {p2, v0, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(IZ)I
invoke-virtual {p3}, Ljava/util/Calendar;->getMinimalDaysInFirstWeek()I
move-result v0
invoke-virtual {p2, v0, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(IZ)I
instance-of p1, p3, Ljava/util/GregorianCalendar;
const/4 v0, 0x0
if-eqz p1, :cond_0
check-cast p3, Ljava/util/GregorianCalendar;
invoke-virtual {p3}, Ljava/util/GregorianCalendar;->getGregorianChange()Ljava/util/Date;
move-result-object p1
invoke-virtual {p1}, Ljava/util/Date;->getTime()J
move-result-wide v1
invoke-virtual {p2, v1, v2, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(JZ)I
return-void
:cond_0
const-wide v1, -0xb1d069b5400L
invoke-virtual {p2, v1, v2, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(JZ)I
return-void
.end method

View file

@ -0,0 +1,95 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CharSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CharSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Character;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CharSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Character;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Character;",
">;)",
"Ljava/lang/Character;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readChar()C
move-result p1
invoke-static {p1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CharSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Character;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Character;)V
.locals 0
invoke-virtual {p3}, Ljava/lang/Character;->charValue()C
move-result p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeChar(C)V
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Character;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CharSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Character;)V
return-void
.end method

View file

@ -0,0 +1,95 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CharsetSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CharsetSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/nio/charset/Charset;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CharsetSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CharsetSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/nio/charset/Charset;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/nio/charset/Charset;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/nio/charset/Charset;",
">;)",
"Ljava/nio/charset/Charset;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Ljava/nio/charset/Charset;->forName(Ljava/lang/String;)Ljava/nio/charset/Charset;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/nio/charset/Charset;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CharsetSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/nio/charset/Charset;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/nio/charset/Charset;)V
.locals 0
invoke-virtual {p3}, Ljava/nio/charset/Charset;->name()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/String;)V
return-void
.end method

View file

@ -0,0 +1,147 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ClassSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ClassSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Class;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ClassSerializer;->setImmutable(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ClassSerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Class;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Class;",
">;)",
"Ljava/lang/Class;"
}
.end annotation
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClass(Lcom/esotericsoftware/kryo/io/Input;)Lcom/esotericsoftware/kryo/Registration;
move-result-object p1
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->read()I
move-result p2
if-eqz p1, :cond_0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/Registration;->getType()Ljava/lang/Class;
move-result-object p1
goto :goto_0
:cond_0
const/4 p1, 0x0
:goto_0
if-eqz p1, :cond_3
invoke-virtual {p1}, Ljava/lang/Class;->isPrimitive()Z
move-result p3
if-nez p3, :cond_1
goto :goto_1
:cond_1
const/4 p3, 0x1
if-ne p2, p3, :cond_2
return-object p1
:cond_2
invoke-static {p1}, Lcom/esotericsoftware/kryo/util/Util;->getWrapperClass(Ljava/lang/Class;)Ljava/lang/Class;
move-result-object p1
:cond_3
:goto_1
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ClassSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Class;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Class;)V
.locals 0
invoke-virtual {p1, p2, p3}, Lcom/esotericsoftware/kryo/Kryo;->writeClass(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Registration;
if-eqz p3, :cond_0
invoke-virtual {p3}, Ljava/lang/Class;->isPrimitive()Z
move-result p1
if-eqz p1, :cond_0
const/4 p1, 0x1
goto :goto_0
:cond_0
const/4 p1, 0x0
:goto_0
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeByte(I)V
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Class;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ClassSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Class;)V
return-void
.end method

View file

@ -0,0 +1,44 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsEmptyListSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CollectionsEmptyListSerializer"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsEmptyListSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
sget-object p1, Ljava/util/Collections;->EMPTY_LIST:Ljava/util/List;
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
return-void
.end method

View file

@ -0,0 +1,44 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsEmptyMapSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CollectionsEmptyMapSerializer"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsEmptyMapSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
sget-object p1, Ljava/util/Collections;->EMPTY_MAP:Ljava/util/Map;
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
return-void
.end method

View file

@ -0,0 +1,44 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsEmptySetSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CollectionsEmptySetSerializer"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsEmptySetSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
sget-object p1, Ljava/util/Collections;->EMPTY_SET:Ljava/util/Set;
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
return-void
.end method

View file

@ -0,0 +1,86 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonListSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CollectionsSingletonListSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/List;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonListSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonListSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/List;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/List;
.locals 0
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClassAndObject(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object;
move-result-object p1
invoke-static {p1}, Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/List;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonListSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/List;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/List;)V
.locals 1
const/4 v0, 0x0
invoke-interface {p3, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object p3
invoke-virtual {p1, p2, p3}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
return-void
.end method

View file

@ -0,0 +1,108 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonMapSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CollectionsSingletonMapSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/Map;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonMapSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonMapSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Map;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Map;
.locals 0
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClassAndObject(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object;
move-result-object p3
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClassAndObject(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object;
move-result-object p1
invoke-static {p3, p1}, Ljava/util/Collections;->singletonMap(Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/Map;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonMapSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Map;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Map;)V
.locals 1
invoke-interface {p3}, Ljava/util/Map;->entrySet()Ljava/util/Set;
move-result-object p3
invoke-interface {p3}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p3
invoke-interface {p3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object p3
check-cast p3, Ljava/util/Map$Entry;
invoke-interface {p3}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v0
invoke-virtual {p1, p2, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
invoke-interface {p3}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object p3
invoke-virtual {p1, p2, p3}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
return-void
.end method

View file

@ -0,0 +1,88 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonSetSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CollectionsSingletonSetSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/Set;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonSetSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonSetSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Set;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Set;
.locals 0
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClassAndObject(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object;
move-result-object p1
invoke-static {p1}, Ljava/util/Collections;->singleton(Ljava/lang/Object;)Ljava/util/Set;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/Set;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonSetSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Set;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Set;)V
.locals 0
invoke-interface {p3}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p3
invoke-interface {p3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object p3
invoke-virtual {p1, p2, p3}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
return-void
.end method

View file

@ -0,0 +1,112 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CurrencySerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "CurrencySerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/Currency;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CurrencySerializer;->setImmutable(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CurrencySerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CurrencySerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Currency;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Currency;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/Currency;",
">;)",
"Ljava/util/Currency;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p1
if-nez p1, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
invoke-static {p1}, Ljava/util/Currency;->getInstance(Ljava/lang/String;)Ljava/util/Currency;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/Currency;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CurrencySerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Currency;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Currency;)V
.locals 0
if-nez p3, :cond_0
const/4 p1, 0x0
goto :goto_0
:cond_0
invoke-virtual {p3}, Ljava/util/Currency;->getCurrencyCode()Ljava/lang/String;
move-result-object p1
:goto_0
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/String;)V
return-void
.end method

View file

@ -0,0 +1,257 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DateSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "DateSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/Date;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
return-void
.end method
.method private create(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;J)Ljava/util/Date;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Ljava/lang/Class<",
"+",
"Ljava/util/Date;",
">;J)",
"Ljava/util/Date;"
}
.end annotation
.annotation system Ldalvik/annotation/Throws;
value = {
Lcom/esotericsoftware/kryo/KryoException;
}
.end annotation
const-class v0, Ljava/util/Date;
if-eq p2, v0, :cond_5
if-nez p2, :cond_0
goto :goto_0
:cond_0
const-class v0, Ljava/sql/Timestamp;
if-ne p2, v0, :cond_1
new-instance p1, Ljava/sql/Timestamp;
invoke-direct {p1, p3, p4}, Ljava/sql/Timestamp;-><init>(J)V
return-object p1
:cond_1
const-class v0, Ljava/sql/Date;
if-ne p2, v0, :cond_2
new-instance p1, Ljava/sql/Date;
invoke-direct {p1, p3, p4}, Ljava/sql/Date;-><init>(J)V
return-object p1
:cond_2
const-class v0, Ljava/sql/Time;
if-ne p2, v0, :cond_3
new-instance p1, Ljava/sql/Time;
invoke-direct {p1, p3, p4}, Ljava/sql/Time;-><init>(J)V
return-object p1
:cond_3
const/4 v0, 0x1
:try_start_0
new-array v1, v0, [Ljava/lang/Class;
sget-object v2, Ljava/lang/Long;->TYPE:Ljava/lang/Class;
const/4 v3, 0x0
aput-object v2, v1, v3
invoke-virtual {p2, v1}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/reflect/Constructor;->isAccessible()Z
move-result v2
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1
if-nez v2, :cond_4
:try_start_1
invoke-virtual {v1, v0}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V
:try_end_1
.catch Ljava/lang/SecurityException; {:try_start_1 .. :try_end_1} :catch_0
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1
:catch_0
:cond_4
:try_start_2
new-array v0, v0, [Ljava/lang/Object;
invoke-static {p3, p4}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v2
aput-object v2, v0, v3
invoke-virtual {v1, v0}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/util/Date;
:try_end_2
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_1
return-object v0
:catch_1
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->newInstance(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/Date;
invoke-virtual {p1, p3, p4}, Ljava/util/Date;->setTime(J)V
return-object p1
:cond_5
:goto_0
new-instance p1, Ljava/util/Date;
invoke-direct {p1, p3, p4}, Ljava/util/Date;-><init>(J)V
return-object p1
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, Ljava/util/Date;
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DateSerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Date;)Ljava/util/Date;
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Date;)Ljava/util/Date;
.locals 3
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
invoke-virtual {p2}, Ljava/util/Date;->getTime()J
move-result-wide v1
invoke-direct {p0, p1, v0, v1, v2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DateSerializer;->create(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;J)Ljava/util/Date;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DateSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Date;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Date;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/Date;",
">;)",
"Ljava/util/Date;"
}
.end annotation
const/4 v0, 0x1
invoke-virtual {p2, v0}, Lcom/esotericsoftware/kryo/io/Input;->readLong(Z)J
move-result-wide v0
invoke-direct {p0, p1, p3, v0, v1}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DateSerializer;->create(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;J)Ljava/util/Date;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/Date;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DateSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Date;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Date;)V
.locals 2
invoke-virtual {p3}, Ljava/util/Date;->getTime()J
move-result-wide v0
const/4 p1, 0x1
invoke-virtual {p2, v0, v1, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(JZ)I
return-void
.end method

View file

@ -0,0 +1,95 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DoubleSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "DoubleSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Double;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DoubleSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Double;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Double;",
">;)",
"Ljava/lang/Double;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readDouble()D
move-result-wide p1
invoke-static {p1, p2}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DoubleSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Double;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Double;)V
.locals 2
invoke-virtual {p3}, Ljava/lang/Double;->doubleValue()D
move-result-wide v0
invoke-virtual {p2, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeDouble(D)V
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Double;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DoubleSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Double;)V
return-void
.end method

View file

@ -0,0 +1,200 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "EnumSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Enum;",
">;"
}
.end annotation
# instance fields
.field private enumConstants:[Ljava/lang/Object;
# direct methods
.method public constructor <init>(Ljava/lang/Class;)V
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class<",
"+",
"Ljava/lang/Enum;",
">;)V"
}
.end annotation
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSerializer;->setImmutable(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSerializer;->setAcceptsNull(Z)V
invoke-virtual {p1}, Ljava/lang/Class;->getEnumConstants()[Ljava/lang/Object;
move-result-object v0
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSerializer;->enumConstants:[Ljava/lang/Object;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSerializer;->enumConstants:[Ljava/lang/Object;
if-eqz v0, :cond_0
return-void
:cond_0
new-instance v0, Ljava/lang/IllegalArgumentException;
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
const-string v1, "The type must be an enum: "
invoke-virtual {v1, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Enum;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Enum;",
">;)",
"Ljava/lang/Enum;"
}
.end annotation
const/4 p1, 0x1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readVarInt(Z)I
move-result p2
if-nez p2, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
add-int/lit8 p2, p2, -0x1
if-ltz p2, :cond_1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSerializer;->enumConstants:[Ljava/lang/Object;
array-length v1, v0
sub-int/2addr v1, p1
if-gt p2, v1, :cond_1
aget-object p1, v0, p2
check-cast p1, Ljava/lang/Enum;
return-object p1
:cond_1
new-instance p1, Lcom/esotericsoftware/kryo/KryoException;
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "Invalid ordinal for enum \""
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p3
invoke-virtual {v0, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p3, "\": "
invoke-virtual {v0, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Enum;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Enum;)V
.locals 0
const/4 p1, 0x1
if-nez p3, :cond_0
const/4 p3, 0x0
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
:cond_0
invoke-virtual {p3}, Ljava/lang/Enum;->ordinal()I
move-result p3
add-int/2addr p3, p1
invoke-virtual {p2, p3, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeVarInt(IZ)I
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Enum;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Enum;)V
return-void
.end method

View file

@ -0,0 +1,236 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSetSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "EnumSetSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/EnumSet;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, Ljava/util/EnumSet;
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSetSerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/EnumSet;)Ljava/util/EnumSet;
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/EnumSet;)Ljava/util/EnumSet;
.locals 0
invoke-static {p2}, Ljava/util/EnumSet;->copyOf(Ljava/util/EnumSet;)Ljava/util/EnumSet;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSetSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/EnumSet;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/EnumSet;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/EnumSet;",
">;)",
"Ljava/util/EnumSet;"
}
.end annotation
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClass(Lcom/esotericsoftware/kryo/io/Input;)Lcom/esotericsoftware/kryo/Registration;
move-result-object p3
invoke-virtual {p3}, Lcom/esotericsoftware/kryo/Registration;->getType()Ljava/lang/Class;
move-result-object v0
invoke-static {v0}, Ljava/util/EnumSet;->noneOf(Ljava/lang/Class;)Ljava/util/EnumSet;
move-result-object v0
invoke-virtual {p3}, Lcom/esotericsoftware/kryo/Registration;->getSerializer()Lcom/esotericsoftware/kryo/Serializer;
move-result-object p3
const/4 v1, 0x1
invoke-virtual {p2, v1}, Lcom/esotericsoftware/kryo/io/Input;->readInt(Z)I
move-result v1
const/4 v2, 0x0
:goto_0
if-ge v2, v1, :cond_0
const/4 v3, 0x0
invoke-virtual {p3, p1, p2, v3}, Lcom/esotericsoftware/kryo/Serializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object v3
invoke-virtual {v0, v3}, Ljava/util/EnumSet;->add(Ljava/lang/Object;)Z
add-int/lit8 v2, v2, 0x1
goto :goto_0
:cond_0
return-object v0
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/EnumSet;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSetSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/EnumSet;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/EnumSet;)V
.locals 3
invoke-virtual {p3}, Ljava/util/EnumSet;->isEmpty()Z
move-result v0
if-eqz v0, :cond_1
invoke-static {p3}, Ljava/util/EnumSet;->complementOf(Ljava/util/EnumSet;)Ljava/util/EnumSet;
move-result-object v0
invoke-virtual {v0}, Ljava/util/EnumSet;->isEmpty()Z
move-result v1
if-nez v1, :cond_0
invoke-virtual {v0}, Ljava/util/EnumSet;->iterator()Ljava/util/Iterator;
move-result-object v0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
invoke-virtual {p1, p2, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeClass(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Registration;
move-result-object v0
invoke-virtual {v0}, Lcom/esotericsoftware/kryo/Registration;->getSerializer()Lcom/esotericsoftware/kryo/Serializer;
move-result-object v0
goto :goto_0
:cond_0
new-instance p1, Lcom/esotericsoftware/kryo/KryoException;
const-string p2, "An EnumSet must have a defined Enum to be serialized."
invoke-direct {p1, p2}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;)V
throw p1
:cond_1
invoke-virtual {p3}, Ljava/util/EnumSet;->iterator()Ljava/util/Iterator;
move-result-object v0
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
invoke-virtual {p1, p2, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeClass(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Registration;
move-result-object v0
invoke-virtual {v0}, Lcom/esotericsoftware/kryo/Registration;->getSerializer()Lcom/esotericsoftware/kryo/Serializer;
move-result-object v0
:goto_0
invoke-virtual {p3}, Ljava/util/EnumSet;->size()I
move-result v1
const/4 v2, 0x1
invoke-virtual {p2, v1, v2}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(IZ)I
invoke-virtual {p3}, Ljava/util/EnumSet;->iterator()Ljava/util/Iterator;
move-result-object p3
:goto_1
invoke-interface {p3}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_2
invoke-interface {p3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
invoke-virtual {v0, p1, p2, v1}, Lcom/esotericsoftware/kryo/Serializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
goto :goto_1
:cond_2
return-void
.end method

View file

@ -0,0 +1,95 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$FloatSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "FloatSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Float;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$FloatSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Float;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Float;",
">;)",
"Ljava/lang/Float;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readFloat()F
move-result p1
invoke-static {p1}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$FloatSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Float;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Float;)V
.locals 0
invoke-virtual {p3}, Ljava/lang/Float;->floatValue()F
move-result p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeFloat(F)V
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Float;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$FloatSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Float;)V
return-void
.end method

View file

@ -0,0 +1,99 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$IntSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "IntSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Integer;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$IntSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Integer;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Integer;",
">;)",
"Ljava/lang/Integer;"
}
.end annotation
const/4 p1, 0x0
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readInt(Z)I
move-result p1
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$IntSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Integer;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Integer;)V
.locals 0
invoke-virtual {p3}, Ljava/lang/Integer;->intValue()I
move-result p1
const/4 p3, 0x0
invoke-virtual {p2, p1, p3}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(IZ)I
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Integer;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$IntSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Integer;)V
return-void
.end method

View file

@ -0,0 +1,89 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$KryoSerializableSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "KryoSerializableSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Lcom/esotericsoftware/kryo/KryoSerializable;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/KryoSerializable;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Lcom/esotericsoftware/kryo/KryoSerializable;",
">;)",
"Lcom/esotericsoftware/kryo/KryoSerializable;"
}
.end annotation
invoke-virtual {p1, p3}, Lcom/esotericsoftware/kryo/Kryo;->newInstance(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p3
check-cast p3, Lcom/esotericsoftware/kryo/KryoSerializable;
invoke-virtual {p1, p3}, Lcom/esotericsoftware/kryo/Kryo;->reference(Ljava/lang/Object;)V
invoke-interface {p3, p1, p2}, Lcom/esotericsoftware/kryo/KryoSerializable;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;)V
return-object p3
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$KryoSerializableSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/KryoSerializable;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Lcom/esotericsoftware/kryo/KryoSerializable;)V
.locals 0
invoke-interface {p3, p1, p2}, Lcom/esotericsoftware/kryo/KryoSerializable;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;)V
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Lcom/esotericsoftware/kryo/KryoSerializable;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$KryoSerializableSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Lcom/esotericsoftware/kryo/KryoSerializable;)V
return-void
.end method

View file

@ -0,0 +1,479 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "LocaleSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/Locale;",
">;"
}
.end annotation
# static fields
.field public static final SPAIN:Ljava/util/Locale;
.field public static final SPANISH:Ljava/util/Locale;
# direct methods
.method static constructor <clinit>()V
.locals 4
new-instance v0, Ljava/util/Locale;
const-string v1, "es"
const-string v2, ""
invoke-direct {v0, v1, v2, v2}, Ljava/util/Locale;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
sput-object v0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->SPANISH:Ljava/util/Locale;
new-instance v0, Ljava/util/Locale;
const-string v3, "ES"
invoke-direct {v0, v1, v3, v2}, Ljava/util/Locale;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
sput-object v0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->SPAIN:Ljava/util/Locale;
return-void
.end method
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->setImmutable(Z)V
return-void
.end method
.method protected static isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
.locals 2
const/4 v0, 0x0
:try_start_0
invoke-virtual {p0}, Ljava/util/Locale;->getLanguage()Ljava/lang/String;
move-result-object v1
invoke-virtual {v1, p1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_0
invoke-virtual {p0}, Ljava/util/Locale;->getCountry()Ljava/lang/String;
move-result-object p1
invoke-virtual {p1, p2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p1
if-eqz p1, :cond_0
invoke-virtual {p0}, Ljava/util/Locale;->getVariant()Ljava/lang/String;
move-result-object p0
invoke-virtual {p0, p3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
move-result p0
:try_end_0
.catch Ljava/lang/NullPointerException; {:try_start_0 .. :try_end_0} :catch_0
if-eqz p0, :cond_0
const/4 p0, 0x1
return p0
:catch_0
:cond_0
return v0
.end method
# virtual methods
.method protected create(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Locale;
.locals 2
invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale;
move-result-object v0
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_0
return-object v0
:cond_0
sget-object v1, Ljava/util/Locale;->US:Ljava/util/Locale;
if-eq v0, v1, :cond_1
sget-object v0, Ljava/util/Locale;->US:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_1
sget-object p1, Ljava/util/Locale;->US:Ljava/util/Locale;
return-object p1
:cond_1
sget-object v0, Ljava/util/Locale;->ENGLISH:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_2
sget-object p1, Ljava/util/Locale;->ENGLISH:Ljava/util/Locale;
return-object p1
:cond_2
sget-object v0, Ljava/util/Locale;->GERMAN:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_3
sget-object p1, Ljava/util/Locale;->GERMAN:Ljava/util/Locale;
return-object p1
:cond_3
sget-object v0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->SPANISH:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_4
sget-object p1, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->SPANISH:Ljava/util/Locale;
return-object p1
:cond_4
sget-object v0, Ljava/util/Locale;->FRENCH:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_5
sget-object p1, Ljava/util/Locale;->FRENCH:Ljava/util/Locale;
return-object p1
:cond_5
sget-object v0, Ljava/util/Locale;->ITALIAN:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_6
sget-object p1, Ljava/util/Locale;->ITALIAN:Ljava/util/Locale;
return-object p1
:cond_6
sget-object v0, Ljava/util/Locale;->JAPANESE:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_7
sget-object p1, Ljava/util/Locale;->JAPANESE:Ljava/util/Locale;
return-object p1
:cond_7
sget-object v0, Ljava/util/Locale;->KOREAN:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_8
sget-object p1, Ljava/util/Locale;->KOREAN:Ljava/util/Locale;
return-object p1
:cond_8
sget-object v0, Ljava/util/Locale;->SIMPLIFIED_CHINESE:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_9
sget-object p1, Ljava/util/Locale;->SIMPLIFIED_CHINESE:Ljava/util/Locale;
return-object p1
:cond_9
sget-object v0, Ljava/util/Locale;->CHINESE:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_a
sget-object p1, Ljava/util/Locale;->CHINESE:Ljava/util/Locale;
return-object p1
:cond_a
sget-object v0, Ljava/util/Locale;->TRADITIONAL_CHINESE:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_b
sget-object p1, Ljava/util/Locale;->TRADITIONAL_CHINESE:Ljava/util/Locale;
return-object p1
:cond_b
sget-object v0, Ljava/util/Locale;->UK:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_c
sget-object p1, Ljava/util/Locale;->UK:Ljava/util/Locale;
return-object p1
:cond_c
sget-object v0, Ljava/util/Locale;->GERMANY:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_d
sget-object p1, Ljava/util/Locale;->GERMANY:Ljava/util/Locale;
return-object p1
:cond_d
sget-object v0, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->SPAIN:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_e
sget-object p1, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->SPAIN:Ljava/util/Locale;
return-object p1
:cond_e
sget-object v0, Ljava/util/Locale;->FRANCE:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_f
sget-object p1, Ljava/util/Locale;->FRANCE:Ljava/util/Locale;
return-object p1
:cond_f
sget-object v0, Ljava/util/Locale;->ITALY:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_10
sget-object p1, Ljava/util/Locale;->ITALY:Ljava/util/Locale;
return-object p1
:cond_10
sget-object v0, Ljava/util/Locale;->JAPAN:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_11
sget-object p1, Ljava/util/Locale;->JAPAN:Ljava/util/Locale;
return-object p1
:cond_11
sget-object v0, Ljava/util/Locale;->KOREA:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_12
sget-object p1, Ljava/util/Locale;->KOREA:Ljava/util/Locale;
return-object p1
:cond_12
sget-object v0, Ljava/util/Locale;->CANADA:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_13
sget-object p1, Ljava/util/Locale;->CANADA:Ljava/util/Locale;
return-object p1
:cond_13
sget-object v0, Ljava/util/Locale;->CANADA_FRENCH:Ljava/util/Locale;
invoke-static {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->isSameLocale(Ljava/util/Locale;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_14
sget-object p1, Ljava/util/Locale;->CANADA_FRENCH:Ljava/util/Locale;
return-object p1
:cond_14
new-instance v0, Ljava/util/Locale;
invoke-direct {v0, p1, p2, p3}, Ljava/util/Locale;-><init>(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
return-object v0
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Locale;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Locale;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/Locale;",
">;)",
"Ljava/util/Locale;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p3
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p2
invoke-virtual {p0, p1, p3, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->create(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Locale;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/Locale;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Locale;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Locale;)V
.locals 0
invoke-virtual {p3}, Ljava/util/Locale;->getLanguage()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeAscii(Ljava/lang/String;)V
invoke-virtual {p3}, Ljava/util/Locale;->getCountry()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeAscii(Ljava/lang/String;)V
invoke-virtual {p3}, Ljava/util/Locale;->getVariant()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/String;)V
return-void
.end method

View file

@ -0,0 +1,99 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LongSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "LongSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Long;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LongSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Long;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Long;",
">;)",
"Ljava/lang/Long;"
}
.end annotation
const/4 p1, 0x0
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Input;->readLong(Z)J
move-result-wide p1
invoke-static {p1, p2}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LongSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Long;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Long;)V
.locals 2
invoke-virtual {p3}, Ljava/lang/Long;->longValue()J
move-result-wide v0
const/4 p1, 0x0
invoke-virtual {p2, v0, v1, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(JZ)I
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Long;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LongSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Long;)V
return-void
.end method

View file

@ -0,0 +1,95 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ShortSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "ShortSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Short;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ShortSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ShortSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Short;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Short;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Short;",
">;)",
"Ljava/lang/Short;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readShort()S
move-result p1
invoke-static {p1}, Ljava/lang/Short;->valueOf(S)Ljava/lang/Short;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Short;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ShortSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Short;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Short;)V
.locals 0
invoke-virtual {p3}, Ljava/lang/Short;->shortValue()S
move-result p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeShort(I)V
return-void
.end method

View file

@ -0,0 +1,120 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBufferSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "StringBufferSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/StringBuffer;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBufferSerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, Ljava/lang/StringBuffer;
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBufferSerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/StringBuffer;)Ljava/lang/StringBuffer;
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/StringBuffer;)Ljava/lang/StringBuffer;
.locals 0
new-instance p1, Ljava/lang/StringBuffer;
invoke-direct {p1, p2}, Ljava/lang/StringBuffer;-><init>(Ljava/lang/CharSequence;)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBufferSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/StringBuffer;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/StringBuffer;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/StringBuffer;",
">;)",
"Ljava/lang/StringBuffer;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p1
if-nez p1, :cond_0
const/4 p1, 0x0
return-object p1
:cond_0
new-instance p2, Ljava/lang/StringBuffer;
invoke-direct {p2, p1}, Ljava/lang/StringBuffer;-><init>(Ljava/lang/String;)V
return-object p2
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/StringBuffer;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBufferSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/StringBuffer;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/StringBuffer;)V
.locals 0
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/CharSequence;)V
return-void
.end method

View file

@ -0,0 +1,109 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBuilderSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "StringBuilderSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/StringBuilder;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBuilderSerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, Ljava/lang/StringBuilder;
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBuilderSerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/StringBuilder;)Ljava/lang/StringBuilder;
.locals 0
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1, p2}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/CharSequence;)V
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBuilderSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/StringBuilder;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/StringBuilder;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/StringBuilder;",
">;)",
"Ljava/lang/StringBuilder;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readStringBuilder()Ljava/lang/StringBuilder;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/StringBuilder;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBuilderSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/StringBuilder;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/StringBuilder;)V
.locals 0
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/CharSequence;)V
return-void
.end method

View file

@ -0,0 +1,89 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "StringSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/String;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringSerializer;->setImmutable(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringSerializer;->setAcceptsNull(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/String;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/String;",
">;)",
"Ljava/lang/String;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/String;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/String;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/String;)V
.locals 0
invoke-virtual {p2, p3}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/String;)V
return-void
.end method

View file

@ -0,0 +1,95 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "TimeZoneSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/TimeZone;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/TimeZone;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/TimeZone;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/TimeZone;",
">;)",
"Ljava/util/TimeZone;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p1
invoke-static {p1}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/TimeZone;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/TimeZone;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/TimeZone;)V
.locals 0
invoke-virtual {p3}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/String;)V
return-void
.end method

View file

@ -0,0 +1,185 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeMapSerializer;
.super Lcom/esotericsoftware/kryo/serializers/MapSerializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "TreeMapSerializer"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;-><init>()V
return-void
.end method
.method private createTreeMap(Ljava/lang/Class;Ljava/util/Comparator;)Ljava/util/TreeMap;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class<",
"+",
"Ljava/util/Map;",
">;",
"Ljava/util/Comparator;",
")",
"Ljava/util/TreeMap;"
}
.end annotation
const-class v0, Ljava/util/TreeMap;
if-eq p1, v0, :cond_1
if-eqz p1, :cond_1
const/4 v0, 0x1
:try_start_0
new-array v1, v0, [Ljava/lang/Class;
const-class v2, Ljava/util/Comparator;
const/4 v3, 0x0
aput-object v2, v1, v3
invoke-virtual {p1, v1}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/reflect/Constructor;->isAccessible()Z
move-result v1
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1
if-nez v1, :cond_0
:try_start_1
invoke-virtual {p1, v0}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V
:try_end_1
.catch Ljava/lang/SecurityException; {:try_start_1 .. :try_end_1} :catch_0
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1
:catch_0
:cond_0
:try_start_2
new-array v0, v0, [Ljava/lang/Object;
aput-object p2, v0, v3
invoke-virtual {p1, v0}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/TreeMap;
:try_end_2
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_1
return-object p1
:catch_1
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
:cond_1
new-instance p1, Ljava/util/TreeMap;
invoke-direct {p1, p2}, Ljava/util/TreeMap;-><init>(Ljava/util/Comparator;)V
return-object p1
.end method
# virtual methods
.method protected create(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Map;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/Map;",
">;)",
"Ljava/util/Map;"
}
.end annotation
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClassAndObject(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/Comparator;
invoke-direct {p0, p3, p1}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeMapSerializer;->createTreeMap(Ljava/lang/Class;Ljava/util/Comparator;)Ljava/util/TreeMap;
move-result-object p1
return-object p1
.end method
.method protected createCopy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Map;)Ljava/util/Map;
.locals 0
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p1
check-cast p2, Ljava/util/TreeMap;
invoke-virtual {p2}, Ljava/util/TreeMap;->comparator()Ljava/util/Comparator;
move-result-object p2
invoke-direct {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeMapSerializer;->createTreeMap(Ljava/lang/Class;Ljava/util/Comparator;)Ljava/util/TreeMap;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/Map;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeMapSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Map;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Map;)V
.locals 1
move-object v0, p3
check-cast v0, Ljava/util/TreeMap;
invoke-virtual {v0}, Ljava/util/TreeMap;->comparator()Ljava/util/Comparator;
move-result-object v0
invoke-virtual {p1, p2, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
invoke-super {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Map;)V
return-void
.end method

View file

@ -0,0 +1,205 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeSetSerializer;
.super Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "TreeSetSerializer"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;-><init>()V
return-void
.end method
.method private createTreeSet(Ljava/lang/Class;Ljava/util/Comparator;)Ljava/util/TreeSet;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class<",
"+",
"Ljava/util/Collection;",
">;",
"Ljava/util/Comparator;",
")",
"Ljava/util/TreeSet;"
}
.end annotation
const-class v0, Ljava/util/TreeSet;
if-eq p1, v0, :cond_1
if-eqz p1, :cond_1
const/4 v0, 0x1
:try_start_0
new-array v1, v0, [Ljava/lang/Class;
const-class v2, Ljava/util/Comparator;
const/4 v3, 0x0
aput-object v2, v1, v3
invoke-virtual {p1, v1}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object p1
invoke-virtual {p1}, Ljava/lang/reflect/Constructor;->isAccessible()Z
move-result v1
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_1
if-nez v1, :cond_0
:try_start_1
invoke-virtual {p1, v0}, Ljava/lang/reflect/Constructor;->setAccessible(Z)V
:try_end_1
.catch Ljava/lang/SecurityException; {:try_start_1 .. :try_end_1} :catch_0
.catch Ljava/lang/Exception; {:try_start_1 .. :try_end_1} :catch_1
:catch_0
:cond_0
:try_start_2
new-array v0, v0, [Ljava/lang/Object;
aput-object p2, v0, v3
invoke-virtual {p1, v0}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/TreeSet;
:try_end_2
.catch Ljava/lang/Exception; {:try_start_2 .. :try_end_2} :catch_1
return-object p1
:catch_1
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
:cond_1
new-instance p1, Ljava/util/TreeSet;
invoke-direct {p1, p2}, Ljava/util/TreeSet;-><init>(Ljava/util/Comparator;)V
return-object p1
.end method
# virtual methods
.method protected bridge synthetic create(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Collection;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeSetSerializer;->create(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/TreeSet;
move-result-object p1
return-object p1
.end method
.method protected create(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/TreeSet;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/Collection;",
">;)",
"Ljava/util/TreeSet;"
}
.end annotation
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClassAndObject(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/Comparator;
invoke-direct {p0, p3, p1}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeSetSerializer;->createTreeSet(Ljava/lang/Class;Ljava/util/Comparator;)Ljava/util/TreeSet;
move-result-object p1
return-object p1
.end method
.method protected bridge synthetic createCopy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Collection;)Ljava/util/Collection;
.locals 0
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeSetSerializer;->createCopy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Collection;)Ljava/util/TreeSet;
move-result-object p1
return-object p1
.end method
.method protected createCopy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Collection;)Ljava/util/TreeSet;
.locals 0
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p1
check-cast p2, Ljava/util/TreeSet;
invoke-virtual {p2}, Ljava/util/TreeSet;->comparator()Ljava/util/Comparator;
move-result-object p2
invoke-direct {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeSetSerializer;->createTreeSet(Ljava/lang/Class;Ljava/util/Comparator;)Ljava/util/TreeSet;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/Collection;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeSetSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Collection;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Collection;)V
.locals 1
move-object v0, p3
check-cast v0, Ljava/util/TreeSet;
invoke-virtual {v0}, Ljava/util/TreeSet;->comparator()Ljava/util/Comparator;
move-result-object v0
invoke-virtual {p1, p2, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
invoke-super {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Collection;)V
return-void
.end method

View file

@ -0,0 +1,107 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$URLSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "URLSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/net/URL;",
">;"
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$URLSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$URLSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/net/URL;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/net/URL;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/net/URL;",
">;)",
"Ljava/net/URL;"
}
.end annotation
:try_start_0
new-instance p1, Ljava/net/URL;
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p2
invoke-direct {p1, p2}, Ljava/net/URL;-><init>(Ljava/lang/String;)V
:try_end_0
.catch Ljava/net/MalformedURLException; {:try_start_0 .. :try_end_0} :catch_0
return-object p1
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/net/URL;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$URLSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/net/URL;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/net/URL;)V
.locals 0
invoke-virtual {p3}, Ljava/net/URL;->toExternalForm()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeString(Ljava/lang/String;)V
return-void
.end method

View file

@ -0,0 +1,44 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$VoidSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "VoidSerializer"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$VoidSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
const/4 p1, 0x0
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
return-void
.end method

View file

@ -0,0 +1,53 @@
.class public Lcom/esotericsoftware/kryo/serializers/DefaultSerializers;
.super Ljava/lang/Object;
.source "DefaultSerializers.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$URLSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CharsetSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LocaleSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeSetSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TreeMapSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CalendarSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$TimeZoneSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonSetSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonMapSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsSingletonListSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsEmptySetSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsEmptyMapSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CollectionsEmptyListSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$KryoSerializableSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBuilderSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringBufferSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CurrencySerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSetSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$EnumSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DateSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ClassSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigDecimalSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BigIntegerSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$StringSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$DoubleSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$FloatSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$LongSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$IntSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ShortSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$CharSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$ByteSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$BooleanSerializer;,
Lcom/esotericsoftware/kryo/serializers/DefaultSerializers$VoidSerializer;
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method

View file

@ -0,0 +1,171 @@
.class public Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "DeflateSerializer.java"
# instance fields
.field private compressionLevel:I
.field private noHeaders:Z
.field private final serializer:Lcom/esotericsoftware/kryo/Serializer;
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/Serializer;)V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->noHeaders:Z
const/4 v0, 0x4
iput v0, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->compressionLevel:I
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
return-void
.end method
# virtual methods
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
invoke-virtual {v0, p1, p2}, Lcom/esotericsoftware/kryo/Serializer;->copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 4
new-instance v0, Ljava/util/zip/Inflater;
iget-boolean v1, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->noHeaders:Z
invoke-direct {v0, v1}, Ljava/util/zip/Inflater;-><init>(Z)V
:try_start_0
new-instance v1, Ljava/util/zip/InflaterInputStream;
new-instance v2, Lcom/esotericsoftware/kryo/io/InputChunked;
const/16 v3, 0x100
invoke-direct {v2, p2, v3}, Lcom/esotericsoftware/kryo/io/InputChunked;-><init>(Ljava/io/InputStream;I)V
invoke-direct {v1, v2, v0}, Ljava/util/zip/InflaterInputStream;-><init>(Ljava/io/InputStream;Ljava/util/zip/Inflater;)V
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
new-instance v2, Lcom/esotericsoftware/kryo/io/Input;
invoke-direct {v2, v1, v3}, Lcom/esotericsoftware/kryo/io/Input;-><init>(Ljava/io/InputStream;I)V
invoke-virtual {p2, p1, v2, p3}, Lcom/esotericsoftware/kryo/Serializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
:try_end_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
invoke-virtual {v0}, Ljava/util/zip/Inflater;->end()V
return-object p1
:catchall_0
move-exception p1
invoke-virtual {v0}, Ljava/util/zip/Inflater;->end()V
throw p1
.end method
.method public setCompressionLevel(I)V
.locals 0
iput p1, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->compressionLevel:I
return-void
.end method
.method public setNoHeaders(Z)V
.locals 0
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->noHeaders:Z
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 4
new-instance v0, Lcom/esotericsoftware/kryo/io/OutputChunked;
const/16 v1, 0x100
invoke-direct {v0, p2, v1}, Lcom/esotericsoftware/kryo/io/OutputChunked;-><init>(Ljava/io/OutputStream;I)V
new-instance p2, Ljava/util/zip/Deflater;
iget v2, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->compressionLevel:I
iget-boolean v3, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->noHeaders:Z
invoke-direct {p2, v2, v3}, Ljava/util/zip/Deflater;-><init>(IZ)V
:try_start_0
new-instance v2, Ljava/util/zip/DeflaterOutputStream;
invoke-direct {v2, v0, p2}, Ljava/util/zip/DeflaterOutputStream;-><init>(Ljava/io/OutputStream;Ljava/util/zip/Deflater;)V
new-instance v3, Lcom/esotericsoftware/kryo/io/Output;
invoke-direct {v3, v2, v1}, Lcom/esotericsoftware/kryo/io/Output;-><init>(Ljava/io/OutputStream;I)V
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/DeflateSerializer;->serializer:Lcom/esotericsoftware/kryo/Serializer;
invoke-virtual {v1, p1, v3, p3}, Lcom/esotericsoftware/kryo/Serializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
invoke-virtual {v3}, Lcom/esotericsoftware/kryo/io/Output;->flush()V
invoke-virtual {v2}, Ljava/util/zip/DeflaterOutputStream;->finish()V
:try_end_0
.catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
invoke-virtual {p2}, Ljava/util/zip/Deflater;->end()V
invoke-virtual {v0}, Lcom/esotericsoftware/kryo/io/OutputChunked;->endChunks()V
return-void
:catchall_0
move-exception p1
goto :goto_0
:catch_0
move-exception p1
:try_start_1
new-instance p3, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p3, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p3
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:goto_0
invoke-virtual {p2}, Ljava/util/zip/Deflater;->end()V
throw p1
.end method

View file

@ -0,0 +1,167 @@
.class public Lcom/esotericsoftware/kryo/serializers/EnumNameSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "EnumNameSerializer.java"
# annotations
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/lang/Enum;",
">;"
}
.end annotation
# instance fields
.field private final enumType:Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Class<",
"+",
"Ljava/lang/Enum;",
">;"
}
.end annotation
.end field
.field private final stringSerializer:Lcom/esotericsoftware/kryo/Serializer;
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;)V
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Ljava/lang/Class<",
"+",
"Ljava/lang/Enum;",
">;)V"
}
.end annotation
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
iput-object p2, p0, Lcom/esotericsoftware/kryo/serializers/EnumNameSerializer;->enumType:Ljava/lang/Class;
const-class p2, Ljava/lang/String;
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object p1
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/EnumNameSerializer;->stringSerializer:Lcom/esotericsoftware/kryo/Serializer;
const/4 p1, 0x1
invoke-virtual {p0, p1}, Lcom/esotericsoftware/kryo/serializers/EnumNameSerializer;->setImmutable(Z)V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Enum;
.locals 2
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/lang/Enum;",
">;)",
"Ljava/lang/Enum;"
}
.end annotation
const-class p3, Ljava/lang/String;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/EnumNameSerializer;->stringSerializer:Lcom/esotericsoftware/kryo/Serializer;
invoke-virtual {p1, p2, p3, v0}, Lcom/esotericsoftware/kryo/Kryo;->readObject(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/String;
:try_start_0
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/EnumNameSerializer;->enumType:Ljava/lang/Class;
invoke-static {p2, p1}, Ljava/lang/Enum;->valueOf(Ljava/lang/Class;Ljava/lang/String;)Ljava/lang/Enum;
move-result-object p1
:try_end_0
.catch Ljava/lang/IllegalArgumentException; {:try_start_0 .. :try_end_0} :catch_0
return-object p1
:catch_0
move-exception p2
new-instance p3, Lcom/esotericsoftware/kryo/KryoException;
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "Invalid name for enum \""
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/EnumNameSerializer;->enumType:Ljava/lang/Class;
invoke-virtual {v1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "\": "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {p3, p1, p2}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p3
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/EnumNameSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Enum;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Enum;)V
.locals 1
invoke-virtual {p3}, Ljava/lang/Enum;->name()Ljava/lang/String;
move-result-object p3
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/EnumNameSerializer;->stringSerializer:Lcom/esotericsoftware/kryo/Serializer;
invoke-virtual {p1, p2, p3, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/lang/Enum;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/EnumNameSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Enum;)V
return-void
.end method

View file

@ -0,0 +1,349 @@
.class public Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "ExternalizableSerializer.java"
# instance fields
.field private javaSerializerByType:Lcom/esotericsoftware/kryo/util/ObjectMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/util/ObjectMap<",
"Ljava/lang/Class;",
"Lcom/esotericsoftware/kryo/serializers/JavaSerializer;",
">;"
}
.end annotation
.end field
.field private objectInput:Lcom/esotericsoftware/kryo/io/KryoObjectInput;
.field private objectOutput:Lcom/esotericsoftware/kryo/io/KryoObjectOutput;
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x0
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->objectInput:Lcom/esotericsoftware/kryo/io/KryoObjectInput;
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->objectOutput:Lcom/esotericsoftware/kryo/io/KryoObjectOutput;
return-void
.end method
.method private getCachedSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/serializers/JavaSerializer;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->javaSerializerByType:Lcom/esotericsoftware/kryo/util/ObjectMap;
if-nez v0, :cond_0
new-instance p1, Lcom/esotericsoftware/kryo/util/ObjectMap;
invoke-direct {p1}, Lcom/esotericsoftware/kryo/util/ObjectMap;-><init>()V
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->javaSerializerByType:Lcom/esotericsoftware/kryo/util/ObjectMap;
const/4 p1, 0x0
return-object p1
:cond_0
invoke-virtual {v0, p1}, Lcom/esotericsoftware/kryo/util/ObjectMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Lcom/esotericsoftware/kryo/serializers/JavaSerializer;
return-object p1
.end method
.method private getJavaSerializerIfRequired(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/serializers/JavaSerializer;
.locals 1
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->getCachedSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/serializers/JavaSerializer;
move-result-object v0
if-nez v0, :cond_0
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->isJavaSerializerRequired(Ljava/lang/Class;)Z
move-result p1
if-eqz p1, :cond_0
new-instance v0, Lcom/esotericsoftware/kryo/serializers/JavaSerializer;
invoke-direct {v0}, Lcom/esotericsoftware/kryo/serializers/JavaSerializer;-><init>()V
:cond_0
return-object v0
.end method
.method private getObjectInput(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;)Ljava/io/ObjectInput;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->objectInput:Lcom/esotericsoftware/kryo/io/KryoObjectInput;
if-nez v0, :cond_0
new-instance v0, Lcom/esotericsoftware/kryo/io/KryoObjectInput;
invoke-direct {v0, p1, p2}, Lcom/esotericsoftware/kryo/io/KryoObjectInput;-><init>(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;)V
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->objectInput:Lcom/esotericsoftware/kryo/io/KryoObjectInput;
goto :goto_0
:cond_0
invoke-virtual {v0, p2}, Lcom/esotericsoftware/kryo/io/KryoObjectInput;->setInput(Lcom/esotericsoftware/kryo/io/Input;)V
:goto_0
iget-object p1, p0, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->objectInput:Lcom/esotericsoftware/kryo/io/KryoObjectInput;
return-object p1
.end method
.method private getObjectOutput(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;)Ljava/io/ObjectOutput;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->objectOutput:Lcom/esotericsoftware/kryo/io/KryoObjectOutput;
if-nez v0, :cond_0
new-instance v0, Lcom/esotericsoftware/kryo/io/KryoObjectOutput;
invoke-direct {v0, p1, p2}, Lcom/esotericsoftware/kryo/io/KryoObjectOutput;-><init>(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;)V
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->objectOutput:Lcom/esotericsoftware/kryo/io/KryoObjectOutput;
goto :goto_0
:cond_0
invoke-virtual {v0, p2}, Lcom/esotericsoftware/kryo/io/KryoObjectOutput;->setOutput(Lcom/esotericsoftware/kryo/io/Output;)V
:goto_0
iget-object p1, p0, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->objectOutput:Lcom/esotericsoftware/kryo/io/KryoObjectOutput;
return-object p1
.end method
.method private static hasInheritableReplaceMethod(Ljava/lang/Class;Ljava/lang/String;)Z
.locals 2
:goto_0
const/4 v0, 0x0
if-eqz p0, :cond_0
:try_start_0
new-array v1, v0, [Ljava/lang/Class;
invoke-virtual {p0, p1, v1}, Ljava/lang/Class;->getDeclaredMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object p0
:try_end_0
.catch Ljava/lang/NoSuchMethodException; {:try_start_0 .. :try_end_0} :catch_0
goto :goto_1
:catch_0
invoke-virtual {p0}, Ljava/lang/Class;->getSuperclass()Ljava/lang/Class;
move-result-object p0
goto :goto_0
:cond_0
const/4 p0, 0x0
:goto_1
if-eqz p0, :cond_1
invoke-virtual {p0}, Ljava/lang/reflect/Method;->getReturnType()Ljava/lang/Class;
move-result-object p0
const-class p1, Ljava/lang/Object;
if-ne p0, p1, :cond_1
const/4 p0, 0x1
return p0
:cond_1
return v0
.end method
.method private isJavaSerializerRequired(Ljava/lang/Class;)Z
.locals 1
const-string v0, "writeReplace"
invoke-static {p1, v0}, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->hasInheritableReplaceMethod(Ljava/lang/Class;Ljava/lang/String;)Z
move-result v0
if-nez v0, :cond_1
const-string v0, "readResolve"
invoke-static {p1, v0}, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->hasInheritableReplaceMethod(Ljava/lang/Class;Ljava/lang/String;)Z
move-result p1
if-eqz p1, :cond_0
goto :goto_0
:cond_0
const/4 p1, 0x0
return p1
:cond_1
:goto_0
const/4 p1, 0x1
return p1
.end method
.method private readExternal(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
:try_start_0
invoke-virtual {p1, p3}, Lcom/esotericsoftware/kryo/Kryo;->newInstance(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p3
check-cast p3, Ljava/io/Externalizable;
invoke-direct {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->getObjectInput(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;)Ljava/io/ObjectInput;
move-result-object p1
invoke-interface {p3, p1}, Ljava/io/Externalizable;->readExternal(Ljava/io/ObjectInput;)V
:try_end_0
.catch Ljava/lang/ClassCastException; {:try_start_0 .. :try_end_0} :catch_2
.catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
return-object p3
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
:catch_1
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
:catch_2
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
.end method
.method private writeExternal(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
:try_start_0
check-cast p3, Ljava/io/Externalizable;
invoke-direct {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->getObjectOutput(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;)Ljava/io/ObjectOutput;
move-result-object p1
invoke-interface {p3, p1}, Ljava/io/Externalizable;->writeExternal(Ljava/io/ObjectOutput;)V
:try_end_0
.catch Ljava/lang/ClassCastException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/io/IOException; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
:catch_1
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
throw p2
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 1
invoke-direct {p0, p3}, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->getJavaSerializerIfRequired(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/serializers/JavaSerializer;
move-result-object v0
if-nez v0, :cond_0
invoke-direct {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->readExternal(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
return-object p1
:cond_0
invoke-virtual {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/JavaSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
return-object p1
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 1
invoke-virtual {p3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
invoke-direct {p0, v0}, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->getJavaSerializerIfRequired(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/serializers/JavaSerializer;
move-result-object v0
if-nez v0, :cond_0
invoke-direct {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/ExternalizableSerializer;->writeExternal(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
return-void
:cond_0
invoke-virtual {v0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/JavaSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
return-void
.end method

View file

@ -0,0 +1,140 @@
.class public abstract Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
.super Ljava/lang/Object;
.source "FieldSerializer.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x409
name = "CachedField"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<X:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# instance fields
.field access:Lcom/esotericsoftware/b/c;
.field accessIndex:I
.field canBeNull:Z
.field field:Ljava/lang/reflect/Field;
.field offset:J
.field serializer:Lcom/esotericsoftware/kryo/Serializer;
.field valueClass:Ljava/lang/Class;
.field varIntsEnabled:Z
# direct methods
.method public constructor <init>()V
.locals 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, -0x1
iput v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
const-wide/16 v0, -0x1
iput-wide v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->offset:J
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->varIntsEnabled:Z
return-void
.end method
# virtual methods
.method public abstract copy(Ljava/lang/Object;Ljava/lang/Object;)V
.end method
.method public getField()Ljava/lang/reflect/Field;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
return-object v0
.end method
.method public getSerializer()Lcom/esotericsoftware/kryo/Serializer;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->serializer:Lcom/esotericsoftware/kryo/Serializer;
return-object v0
.end method
.method public abstract read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.end method
.method public setCanBeNull(Z)V
.locals 0
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->canBeNull:Z
return-void
.end method
.method public setClass(Ljava/lang/Class;)V
.locals 0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->valueClass:Ljava/lang/Class;
const/4 p1, 0x0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->serializer:Lcom/esotericsoftware/kryo/Serializer;
return-void
.end method
.method public setClass(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)V
.locals 0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->valueClass:Ljava/lang/Class;
iput-object p2, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->serializer:Lcom/esotericsoftware/kryo/Serializer;
return-void
.end method
.method public setSerializer(Lcom/esotericsoftware/kryo/Serializer;)V
.locals 0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->serializer:Lcom/esotericsoftware/kryo/Serializer;
return-void
.end method
.method public toString()Ljava/lang/String;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0}, Ljava/lang/reflect/Field;->getName()Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public abstract write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.end method

View file

@ -0,0 +1,19 @@
.class public interface abstract Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldFactory;
.super Ljava/lang/Object;
.source "FieldSerializer.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "CachedFieldFactory"
.end annotation
# virtual methods
.method public abstract createCachedField(Ljava/lang/Class;Ljava/lang/reflect/Field;Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
.end method

View file

@ -0,0 +1,41 @@
.class final Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy$1;
.super Ljava/lang/Object;
.source "FieldSerializer.java"
# interfaces
.implements Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final getName(Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;)Ljava/lang/String;
.locals 0
iget-object p1, p1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
invoke-virtual {p1}, Ljava/lang/reflect/Field;->getName()Ljava/lang/String;
move-result-object p1
return-object p1
.end method

View file

@ -0,0 +1,67 @@
.class final Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy$2;
.super Ljava/lang/Object;
.source "FieldSerializer.java"
# interfaces
.implements Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = null
.end annotation
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final getName(Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;)Ljava/lang/String;
.locals 2
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
iget-object v1, p1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v1}, Ljava/lang/reflect/Field;->getDeclaringClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->getSimpleName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v1, "."
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object p1, p1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
invoke-virtual {p1}, Ljava/lang/reflect/Field;->getName()Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
return-object p1
.end method

View file

@ -0,0 +1,45 @@
.class public interface abstract Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
.super Ljava/lang/Object;
.source "FieldSerializer.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x609
name = "CachedFieldNameStrategy"
.end annotation
# static fields
.field public static final DEFAULT:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
.field public static final EXTENDED:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
# direct methods
.method static constructor <clinit>()V
.locals 1
new-instance v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy$1;
invoke-direct {v0}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy$1;-><init>()V
sput-object v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;->DEFAULT:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
new-instance v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy$2;
invoke-direct {v0}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy$2;-><init>()V
sput-object v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;->EXTENDED:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
return-void
.end method
# virtual methods
.method public abstract getName(Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;)Ljava/lang/String;
.end method

View file

@ -0,0 +1,547 @@
.class final Lcom/esotericsoftware/kryo/serializers/FieldSerializerAnnotationsUtil;
.super Ljava/lang/Object;
.source "FieldSerializerAnnotationsUtil.java"
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final processAnnotatedFields(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 12
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getFields()[Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v0
array-length v1, v0
const/4 v2, 0x0
:goto_0
if-ge v2, v1, :cond_11
aget-object v3, v0, v2
invoke-virtual {v3}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->getField()Ljava/lang/reflect/Field;
move-result-object v3
const-class v4, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$Bind;
invoke-virtual {v3, v4}, Ljava/lang/reflect/Field;->isAnnotationPresent(Ljava/lang/Class;)Z
move-result v4
if-eqz v4, :cond_0
const-class v4, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$Bind;
invoke-virtual {v3, v4}, Ljava/lang/reflect/Field;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
move-result-object v4
check-cast v4, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$Bind;
invoke-interface {v4}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$Bind;->value()Ljava/lang/Class;
move-result-object v4
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getKryo()Lcom/esotericsoftware/kryo/Kryo;
move-result-object v5
invoke-virtual {v3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v6
invoke-static {v5, v4, v6}, Lcom/esotericsoftware/kryo/factories/ReflectionSerializerFactory;->makeSerializer(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v4
aget-object v5, v0, v2
invoke-virtual {v5, v4}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->setSerializer(Lcom/esotericsoftware/kryo/Serializer;)V
:cond_0
const-class v4, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer$BindCollection;
invoke-virtual {v3, v4}, Ljava/lang/reflect/Field;->isAnnotationPresent(Ljava/lang/Class;)Z
move-result v4
if-eqz v4, :cond_1
const-class v4, Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;
invoke-virtual {v3, v4}, Ljava/lang/reflect/Field;->isAnnotationPresent(Ljava/lang/Class;)Z
:cond_1
const-class v4, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer$BindCollection;
invoke-virtual {v3, v4}, Ljava/lang/reflect/Field;->isAnnotationPresent(Ljava/lang/Class;)Z
move-result v4
const-string v5, " does not implement it."
const-string v6, ", because it has a serializer already."
const-string v7, "."
const/4 v8, 0x0
if-eqz v4, :cond_7
aget-object v4, v0, v2
iget-object v4, v4, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->serializer:Lcom/esotericsoftware/kryo/Serializer;
if-nez v4, :cond_6
const-class v4, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer$BindCollection;
invoke-virtual {v3, v4}, Ljava/lang/reflect/Field;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
move-result-object v4
check-cast v4, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer$BindCollection;
const-class v9, Ljava/util/Collection;
aget-object v10, v0, v2
iget-object v10, v10, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v10}, Ljava/lang/reflect/Field;->getType()Ljava/lang/Class;
move-result-object v10
invoke-virtual {v9, v10}, Ljava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z
move-result v9
if-eqz v9, :cond_5
invoke-interface {v4}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer$BindCollection;->elementSerializer()Ljava/lang/Class;
move-result-object v9
const-class v10, Lcom/esotericsoftware/kryo/Serializer;
if-ne v9, v10, :cond_2
move-object v9, v8
:cond_2
if-nez v9, :cond_3
move-object v9, v8
goto :goto_1
:cond_3
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getKryo()Lcom/esotericsoftware/kryo/Kryo;
move-result-object v10
invoke-virtual {v3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v11
invoke-static {v10, v9, v11}, Lcom/esotericsoftware/kryo/factories/ReflectionSerializerFactory;->makeSerializer(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v9
:goto_1
invoke-interface {v4}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer$BindCollection;->elementsCanBeNull()Z
move-result v10
invoke-interface {v4}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer$BindCollection;->elementClass()Ljava/lang/Class;
move-result-object v4
const-class v11, Ljava/lang/Object;
if-ne v4, v11, :cond_4
move-object v4, v8
:cond_4
new-instance v11, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;
invoke-direct {v11}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;-><init>()V
invoke-virtual {v11, v10}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->setElementsCanBeNull(Z)V
invoke-virtual {v11, v4, v9}, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->setElementClass(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)V
aget-object v4, v0, v2
invoke-virtual {v4, v11}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->setSerializer(Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_2
:cond_5
new-instance p1, Ljava/lang/RuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v3, "CollectionSerialier.Bind should be used only with fields implementing java.util.Collection, but field "
invoke-direct {v1, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
aget-object v3, v0, v2
invoke-virtual {v3}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->getField()Ljava/lang/reflect/Field;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/reflect/Field;->getDeclaringClass()Ljava/lang/Class;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v3
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget-object v0, v0, v2
invoke-virtual {v0}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->getField()Ljava/lang/reflect/Field;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/reflect/Field;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p1
:cond_6
new-instance p1, Ljava/lang/RuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v3, "CollectionSerialier.Bind cannot be used with field "
invoke-direct {v1, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
aget-object v3, v0, v2
invoke-virtual {v3}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->getField()Ljava/lang/reflect/Field;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/reflect/Field;->getDeclaringClass()Ljava/lang/Class;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v3
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget-object v0, v0, v2
invoke-virtual {v0}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->getField()Ljava/lang/reflect/Field;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/reflect/Field;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p1
:cond_7
:goto_2
const-class v4, Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;
invoke-virtual {v3, v4}, Ljava/lang/reflect/Field;->isAnnotationPresent(Ljava/lang/Class;)Z
move-result v4
if-eqz v4, :cond_10
aget-object v4, v0, v2
iget-object v4, v4, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->serializer:Lcom/esotericsoftware/kryo/Serializer;
if-nez v4, :cond_f
const-class v4, Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;
invoke-virtual {v3, v4}, Ljava/lang/reflect/Field;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
move-result-object v4
check-cast v4, Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;
const-class v6, Ljava/util/Map;
aget-object v9, v0, v2
iget-object v9, v9, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v9}, Ljava/lang/reflect/Field;->getType()Ljava/lang/Class;
move-result-object v9
invoke-virtual {v6, v9}, Ljava/lang/Class;->isAssignableFrom(Ljava/lang/Class;)Z
move-result v6
if-eqz v6, :cond_e
invoke-interface {v4}, Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;->valueSerializer()Ljava/lang/Class;
move-result-object v5
invoke-interface {v4}, Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;->keySerializer()Ljava/lang/Class;
move-result-object v6
const-class v7, Lcom/esotericsoftware/kryo/Serializer;
if-ne v5, v7, :cond_8
move-object v5, v8
:cond_8
const-class v7, Lcom/esotericsoftware/kryo/Serializer;
if-ne v6, v7, :cond_9
move-object v6, v8
:cond_9
if-nez v5, :cond_a
move-object v5, v8
goto :goto_3
:cond_a
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getKryo()Lcom/esotericsoftware/kryo/Kryo;
move-result-object v7
invoke-virtual {v3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v9
invoke-static {v7, v5, v9}, Lcom/esotericsoftware/kryo/factories/ReflectionSerializerFactory;->makeSerializer(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v5
:goto_3
if-nez v6, :cond_b
move-object v3, v8
goto :goto_4
:cond_b
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getKryo()Lcom/esotericsoftware/kryo/Kryo;
move-result-object v7
invoke-virtual {v3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v3
invoke-static {v7, v6, v3}, Lcom/esotericsoftware/kryo/factories/ReflectionSerializerFactory;->makeSerializer(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Class;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v3
:goto_4
invoke-interface {v4}, Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;->valuesCanBeNull()Z
move-result v6
invoke-interface {v4}, Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;->keysCanBeNull()Z
move-result v7
invoke-interface {v4}, Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;->keyClass()Ljava/lang/Class;
move-result-object v9
invoke-interface {v4}, Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;->valueClass()Ljava/lang/Class;
move-result-object v4
const-class v10, Ljava/lang/Object;
if-ne v9, v10, :cond_c
move-object v9, v8
:cond_c
const-class v10, Ljava/lang/Object;
if-ne v4, v10, :cond_d
move-object v4, v8
:cond_d
new-instance v8, Lcom/esotericsoftware/kryo/serializers/MapSerializer;
invoke-direct {v8}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;-><init>()V
invoke-virtual {v8, v7}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->setKeysCanBeNull(Z)V
invoke-virtual {v8, v6}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->setValuesCanBeNull(Z)V
invoke-virtual {v8, v9, v3}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->setKeyClass(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)V
invoke-virtual {v8, v4, v5}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->setValueClass(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)V
aget-object v3, v0, v2
invoke-virtual {v3, v8}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->setSerializer(Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_5
:cond_e
new-instance p1, Ljava/lang/RuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v3, "MapSerialier.Bind should be used only with fields implementing java.util.Map, but field "
invoke-direct {v1, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
aget-object v3, v0, v2
invoke-virtual {v3}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->getField()Ljava/lang/reflect/Field;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/reflect/Field;->getDeclaringClass()Ljava/lang/Class;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v3
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget-object v0, v0, v2
invoke-virtual {v0}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->getField()Ljava/lang/reflect/Field;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/reflect/Field;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p1
:cond_f
new-instance p1, Ljava/lang/RuntimeException;
new-instance v1, Ljava/lang/StringBuilder;
const-string v3, "MapSerialier.Bind cannot be used with field "
invoke-direct {v1, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
aget-object v3, v0, v2
invoke-virtual {v3}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->getField()Ljava/lang/reflect/Field;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/reflect/Field;->getDeclaringClass()Ljava/lang/Class;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v3
invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
aget-object v0, v0, v2
invoke-virtual {v0}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->getField()Ljava/lang/reflect/Field;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/reflect/Field;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
throw p1
:cond_10
:goto_5
add-int/lit8 v2, v2, 0x1
goto/16 :goto_0
:cond_11
return-void
.end method

View file

@ -0,0 +1,424 @@
.class public Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;
.super Ljava/lang/Object;
.source "FieldSerializerConfig.java"
# interfaces
.implements Ljava/lang/Cloneable;
# instance fields
.field private cachedFieldNameStrategy:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
.field private copyTransient:Z
.field private fieldsCanBeNull:Z
.field private fixedFieldTypes:Z
.field private ignoreSyntheticFields:Z
.field private optimizedGenerics:Z
.field private serializeTransient:Z
.field private setFieldsAsAccessible:Z
.field private useAsm:Z
# direct methods
.method public constructor <init>()V
.locals 2
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->fieldsCanBeNull:Z
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->setFieldsAsAccessible:Z
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->ignoreSyntheticFields:Z
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->copyTransient:Z
const/4 v1, 0x0
iput-boolean v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->serializeTransient:Z
iput-boolean v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->optimizedGenerics:Z
sget-object v1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;->DEFAULT:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
iput-object v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->cachedFieldNameStrategy:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
sget-boolean v1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->unsafeAvailable:Z
xor-int/2addr v0, v1
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->useAsm:Z
sget-boolean v0, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "useAsm: "
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-boolean v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->useAsm:Z
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "kryo.FieldSerializerConfig"
invoke-static {v1, v0}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
# virtual methods
.method protected clone()Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;
.locals 2
:try_start_0
invoke-super {p0}, Ljava/lang/Object;->clone()Ljava/lang/Object;
move-result-object v0
check-cast v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;
:try_end_0
.catch Ljava/lang/CloneNotSupportedException; {:try_start_0 .. :try_end_0} :catch_0
return-object v0
:catch_0
move-exception v0
new-instance v1, Ljava/lang/RuntimeException;
invoke-direct {v1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/Throwable;)V
throw v1
.end method
.method protected bridge synthetic clone()Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/CloneNotSupportedException;
}
.end annotation
invoke-virtual {p0}, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->clone()Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;
move-result-object v0
return-object v0
.end method
.method public getCachedFieldNameStrategy()Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->cachedFieldNameStrategy:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
return-object v0
.end method
.method public isCopyTransient()Z
.locals 1
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->copyTransient:Z
return v0
.end method
.method public isFieldsCanBeNull()Z
.locals 1
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->fieldsCanBeNull:Z
return v0
.end method
.method public isFixedFieldTypes()Z
.locals 1
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->fixedFieldTypes:Z
return v0
.end method
.method public isIgnoreSyntheticFields()Z
.locals 1
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->ignoreSyntheticFields:Z
return v0
.end method
.method public isOptimizedGenerics()Z
.locals 1
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->optimizedGenerics:Z
return v0
.end method
.method public isSerializeTransient()Z
.locals 1
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->serializeTransient:Z
return v0
.end method
.method public isSetFieldsAsAccessible()Z
.locals 1
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->setFieldsAsAccessible:Z
return v0
.end method
.method public isUseAsm()Z
.locals 1
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->useAsm:Z
return v0
.end method
.method public setCachedFieldNameStrategy(Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;)V
.locals 1
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->cachedFieldNameStrategy:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
sget-boolean v0, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v0, :cond_0
invoke-static {p1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
move-result-object p1
const-string v0, "CachedFieldNameStrategy: "
invoke-virtual {v0, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
.method public setCopyTransient(Z)V
.locals 0
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->copyTransient:Z
return-void
.end method
.method public setFieldsAsAccessible(Z)V
.locals 1
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->setFieldsAsAccessible:Z
sget-boolean v0, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v0, :cond_0
invoke-static {p1}, Ljava/lang/String;->valueOf(Z)Ljava/lang/String;
move-result-object p1
const-string v0, "setFieldsAsAccessible: "
invoke-virtual {v0, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
.method public setFieldsCanBeNull(Z)V
.locals 1
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->fieldsCanBeNull:Z
sget-boolean v0, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v0, :cond_0
invoke-static {p1}, Ljava/lang/String;->valueOf(Z)Ljava/lang/String;
move-result-object p1
const-string v0, "setFieldsCanBeNull: "
invoke-virtual {v0, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
.method public setFixedFieldTypes(Z)V
.locals 1
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->fixedFieldTypes:Z
sget-boolean v0, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v0, :cond_0
invoke-static {p1}, Ljava/lang/String;->valueOf(Z)Ljava/lang/String;
move-result-object p1
const-string v0, "setFixedFieldTypes: "
invoke-virtual {v0, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
.method public setIgnoreSyntheticFields(Z)V
.locals 1
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->ignoreSyntheticFields:Z
sget-boolean v0, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v0, :cond_0
invoke-static {p1}, Ljava/lang/String;->valueOf(Z)Ljava/lang/String;
move-result-object p1
const-string v0, "setIgnoreSyntheticFields: "
invoke-virtual {v0, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
.method public setOptimizedGenerics(Z)V
.locals 1
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->optimizedGenerics:Z
sget-boolean v0, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v0, :cond_0
invoke-static {p1}, Ljava/lang/String;->valueOf(Z)Ljava/lang/String;
move-result-object p1
const-string v0, "setOptimizedGenerics: "
invoke-virtual {v0, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
.method public setSerializeTransient(Z)V
.locals 0
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->serializeTransient:Z
return-void
.end method
.method public setUseAsm(Z)V
.locals 2
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->useAsm:Z
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->useAsm:Z
const-string v1, "kryo.FieldSerializerConfig"
if-nez v0, :cond_0
sget-boolean v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->unsafeAvailable:Z
if-nez v0, :cond_0
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->useAsm:Z
sget-boolean v0, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v0, :cond_0
const-string v0, "sun.misc.Unsafe is unavailable, using ASM."
invoke-static {v1, v0}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
sget-boolean v0, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v0, :cond_1
invoke-static {p1}, Ljava/lang/String;->valueOf(Z)Ljava/lang/String;
move-result-object p1
const-string v0, "setUseAsm: "
invoke-virtual {v0, p1}, Ljava/lang/String;->concat(Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
invoke-static {v1, p1}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_1
return-void
.end method

View file

@ -0,0 +1,107 @@
.class public Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil$Factory;
.super Ljava/lang/Object;
.source "FieldSerializerUnsafeUtil.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x9
name = "Factory"
.end annotation
# static fields
.field static fieldSerializerUnsafeUtilConstructor:Ljava/lang/reflect/Constructor;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/reflect/Constructor<",
"Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil;",
">;"
}
.end annotation
.end field
# direct methods
.method static constructor <clinit>()V
.locals 4
:try_start_0
const-class v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-virtual {v0}, Ljava/lang/Class;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object v0
const-string v1, "com.esotericsoftware.kryo.serializers.FieldSerializerUnsafeUtilImpl"
invoke-virtual {v0, v1}, Ljava/lang/ClassLoader;->loadClass(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v0
const/4 v1, 0x1
new-array v1, v1, [Ljava/lang/Class;
const/4 v2, 0x0
const-class v3, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
aput-object v3, v1, v2
invoke-virtual {v0, v1}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
move-result-object v0
sput-object v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil$Factory;->fieldSerializerUnsafeUtilConstructor:Ljava/lang/reflect/Constructor;
:try_end_0
.catch Ljava/lang/Throwable; {:try_start_0 .. :try_end_0} :catch_0
:catch_0
return-void
.end method
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method static getInstance(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil;
.locals 3
sget-object v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil$Factory;->fieldSerializerUnsafeUtilConstructor:Ljava/lang/reflect/Constructor;
if-eqz v0, :cond_0
const/4 v1, 0x1
:try_start_0
new-array v1, v1, [Ljava/lang/Object;
const/4 v2, 0x0
aput-object p0, v1, v2
invoke-virtual {v0, v1}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil;
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-object p0
:catch_0
:cond_0
const/4 p0, 0x0
return-object p0
.end method

View file

@ -0,0 +1,32 @@
.class interface abstract Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil;
.super Ljava/lang/Object;
.source "FieldSerializerUnsafeUtil.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil$Factory;
}
.end annotation
# virtual methods
.method public abstract createUnsafeCacheFieldsAndRegions(Ljava/util/List;Ljava/util/List;ILcom/esotericsoftware/kryo/util/IntArray;)V
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Ljava/lang/reflect/Field;",
">;",
"Ljava/util/List<",
"Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;",
">;I",
"Lcom/esotericsoftware/kryo/util/IntArray;",
")V"
}
.end annotation
.end method
.method public abstract getObjectFieldOffset(Ljava/lang/reflect/Field;)J
.end method

View file

@ -0,0 +1,554 @@
.class final Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;
.super Ljava/lang/Object;
.source "FieldSerializerUnsafeUtilImpl.java"
# interfaces
.implements Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil;
# instance fields
.field private serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
return-void
.end method
.method private fieldSizeOf(Ljava/lang/Class;)I
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class<",
"*>;)I"
}
.end annotation
sget-object v0, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
if-eq p1, v0, :cond_7
sget-object v0, Ljava/lang/Float;->TYPE:Ljava/lang/Class;
if-ne p1, v0, :cond_0
goto :goto_3
:cond_0
sget-object v0, Ljava/lang/Long;->TYPE:Ljava/lang/Class;
if-eq p1, v0, :cond_6
sget-object v0, Ljava/lang/Double;->TYPE:Ljava/lang/Class;
if-ne p1, v0, :cond_1
goto :goto_2
:cond_1
sget-object v0, Ljava/lang/Byte;->TYPE:Ljava/lang/Class;
if-eq p1, v0, :cond_5
sget-object v0, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
if-ne p1, v0, :cond_2
goto :goto_1
:cond_2
sget-object v0, Ljava/lang/Short;->TYPE:Ljava/lang/Class;
if-eq p1, v0, :cond_4
sget-object v0, Ljava/lang/Character;->TYPE:Ljava/lang/Class;
if-ne p1, v0, :cond_3
goto :goto_0
:cond_3
invoke-static {}, Lcom/esotericsoftware/kryo/util/UnsafeUtil;->unsafe()Lsun/misc/Unsafe;
move-result-object p1
invoke-virtual {p1}, Lsun/misc/Unsafe;->addressSize()I
move-result p1
return p1
:cond_4
:goto_0
const/4 p1, 0x2
return p1
:cond_5
:goto_1
const/4 p1, 0x1
return p1
:cond_6
:goto_2
const/16 p1, 0x8
return p1
:cond_7
:goto_3
const/4 p1, 0x4
return p1
.end method
# virtual methods
.method public final createUnsafeCacheFieldsAndRegions(Ljava/util/List;Ljava/util/List;ILcom/esotericsoftware/kryo/util/IntArray;)V
.locals 24
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/List<",
"Ljava/lang/reflect/Field;",
">;",
"Ljava/util/List<",
"Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;",
">;I",
"Lcom/esotericsoftware/kryo/util/IntArray;",
")V"
}
.end annotation
move-object/from16 v0, p0
move-object/from16 v1, p2
invoke-interface/range {p1 .. p1}, Ljava/util/List;->size()I
move-result v2
const-wide/16 v5, 0x0
const/4 v7, 0x0
const-wide/16 v8, -0x1
move-wide v12, v5
move-object v10, v7
const/4 v5, 0x0
const/4 v6, 0x0
const/4 v7, 0x0
const/4 v11, -0x1
:goto_0
const-string v14, " endOffset="
const-string v15, " Start offset = "
const-string v3, ". Byte length = "
const-string v4, ". Found a set of consecutive primitive fields. Number of fields = "
move/from16 v16, v11
const-string v11, "Class "
const-string v1, "kryo"
move-object/from16 v17, v10
if-ge v5, v2, :cond_8
move-object/from16 v10, p1
invoke-interface {v10, v5}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v18
move/from16 v19, v2
move-object/from16 v2, v18
check-cast v2, Ljava/lang/reflect/Field;
iget-object v10, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
iget-object v10, v10, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->access:Ljava/lang/Object;
if-eqz v10, :cond_0
add-int v10, p3, v5
move/from16 v18, v5
move-object/from16 v5, p4
invoke-virtual {v5, v10}, Lcom/esotericsoftware/kryo/util/IntArray;->get(I)I
move-result v10
const/4 v5, 0x1
if-ne v10, v5, :cond_1
iget-object v5, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
iget-object v5, v5, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->access:Ljava/lang/Object;
check-cast v5, Lcom/esotericsoftware/b/c;
invoke-virtual {v2}, Ljava/lang/reflect/Field;->getName()Ljava/lang/String;
move-result-object v10
invoke-virtual {v5, v10}, Lcom/esotericsoftware/b/c;->getIndex(Ljava/lang/String;)I
move-result v5
goto :goto_1
:cond_0
move/from16 v18, v5
:cond_1
const/4 v5, -0x1
:goto_1
invoke-static {}, Lcom/esotericsoftware/kryo/util/UnsafeUtil;->unsafe()Lsun/misc/Unsafe;
move-result-object v10
invoke-virtual {v10, v2}, Lsun/misc/Unsafe;->objectFieldOffset(Ljava/lang/reflect/Field;)J
move-result-wide v20
invoke-virtual {v2}, Ljava/lang/reflect/Field;->getType()Ljava/lang/Class;
move-result-object v10
invoke-direct {v0, v10}, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->fieldSizeOf(Ljava/lang/Class;)I
move-result v10
move-object/from16 v22, v14
move-object/from16 v23, v15
int-to-long v14, v10
add-long v14, v20, v14
invoke-virtual {v2}, Ljava/lang/reflect/Field;->getType()Ljava/lang/Class;
move-result-object v10
invoke-virtual {v10}, Ljava/lang/Class;->isPrimitive()Z
move-result v10
if-nez v10, :cond_5
if-eqz v6, :cond_5
const/4 v10, 0x1
if-le v7, v10, :cond_3
sget-boolean v6, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v6, :cond_2
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6, v11}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v10, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-virtual {v10}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getType()Ljava/lang/Class;
move-result-object v10
invoke-virtual {v10}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v10
invoke-virtual {v6, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
sub-long v3, v8, v12
invoke-virtual {v6, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-object/from16 v10, v23
invoke-virtual {v6, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v12, v13}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-object/from16 v3, v22
invoke-virtual {v6, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v8, v9}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v1, v3}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_2
new-instance v1, Lcom/esotericsoftware/kryo/serializers/UnsafeCacheFields$UnsafeRegionField;
sub-long/2addr v8, v12
invoke-direct {v1, v12, v13, v8, v9}, Lcom/esotericsoftware/kryo/serializers/UnsafeCacheFields$UnsafeRegionField;-><init>(JJ)V
move-object/from16 v3, v17
iput-object v3, v1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
move-object/from16 v4, p2
invoke-interface {v4, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_2
:cond_3
move-object/from16 v4, p2
move-object/from16 v3, v17
if-eqz v3, :cond_4
iget-object v1, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-interface/range {p2 .. p2}, Ljava/util/List;->size()I
move-result v6
move/from16 v8, v16
invoke-virtual {v1, v3, v6, v8}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->newCachedField(Ljava/lang/reflect/Field;II)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v1
invoke-interface {v4, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_4
:goto_2
iget-object v1, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-interface/range {p2 .. p2}, Ljava/util/List;->size()I
move-result v3
invoke-virtual {v1, v2, v3, v5}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->newCachedField(Ljava/lang/reflect/Field;II)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v1
invoke-interface {v4, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
const/4 v6, 0x0
goto :goto_3
:cond_5
move-object/from16 v4, p2
invoke-virtual {v2}, Ljava/lang/reflect/Field;->getType()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v1}, Ljava/lang/Class;->isPrimitive()Z
move-result v1
if-nez v1, :cond_6
iget-object v1, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-interface/range {p2 .. p2}, Ljava/util/List;->size()I
move-result v3
invoke-virtual {v1, v2, v3, v5}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->newCachedField(Ljava/lang/reflect/Field;II)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v1
invoke-interface {v4, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_3
:cond_6
if-nez v6, :cond_7
move-wide/from16 v12, v20
const/4 v6, 0x1
const/4 v7, 0x1
goto :goto_3
:cond_7
add-int/lit8 v7, v7, 0x1
:goto_3
add-int/lit8 v1, v18, 0x1
move-object v10, v2
move v11, v5
move-wide v8, v14
move/from16 v2, v19
move v5, v1
move-object v1, v4
goto/16 :goto_0
:cond_8
move-object v10, v15
move-object/from16 v2, v17
move-object v15, v1
move-object/from16 v1, p2
iget-object v5, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-virtual {v5}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getUseAsmEnabled()Z
move-result v5
if-nez v5, :cond_b
iget-object v5, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-virtual {v5}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getUseMemRegions()Z
move-result v5
if-eqz v5, :cond_b
if-eqz v6, :cond_b
const/4 v5, 0x1
if-le v7, v5, :cond_a
sget-boolean v5, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v5, :cond_9
new-instance v5, Ljava/lang/StringBuilder;
invoke-direct {v5, v11}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
iget-object v6, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-virtual {v6}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getType()Ljava/lang/Class;
move-result-object v6
invoke-virtual {v6}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v6
invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5, v7}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v5, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
sub-long v3, v8, v12
invoke-virtual {v5, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v5, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5, v12, v13}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v5, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v15, v3}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_9
new-instance v3, Lcom/esotericsoftware/kryo/serializers/UnsafeCacheFields$UnsafeRegionField;
sub-long/2addr v8, v12
invoke-direct {v3, v12, v13, v8, v9}, Lcom/esotericsoftware/kryo/serializers/UnsafeCacheFields$UnsafeRegionField;-><init>(JJ)V
iput-object v2, v3, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
invoke-interface {v1, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z
return-void
:cond_a
if-eqz v2, :cond_b
iget-object v3, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-interface/range {p2 .. p2}, Ljava/util/List;->size()I
move-result v4
move/from16 v5, v16
invoke-virtual {v3, v2, v4, v5}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->newCachedField(Ljava/lang/reflect/Field;II)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v2
invoke-interface {v1, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_b
return-void
.end method
.method public final getObjectFieldOffset(Ljava/lang/reflect/Field;)J
.locals 2
invoke-static {}, Lcom/esotericsoftware/kryo/util/UnsafeUtil;->unsafe()Lsun/misc/Unsafe;
move-result-object v0
invoke-virtual {v0, p1}, Lsun/misc/Unsafe;->objectFieldOffset(Ljava/lang/reflect/Field;)J
move-result-wide v0
return-wide v0
.end method

View file

@ -0,0 +1,110 @@
.class final Lcom/esotericsoftware/kryo/serializers/Generics;
.super Ljava/lang/Object;
.source "Generics.java"
# instance fields
.field private typeVar2class:Ljava/util/Map;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/Class;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/Generics;->typeVar2class:Ljava/util/Map;
return-void
.end method
.method public constructor <init>(Ljava/util/Map;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/Class;",
">;)V"
}
.end annotation
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0, p1}, Ljava/util/HashMap;-><init>(Ljava/util/Map;)V
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/Generics;->typeVar2class:Ljava/util/Map;
return-void
.end method
# virtual methods
.method public final add(Ljava/lang/String;Ljava/lang/Class;)V
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/Generics;->typeVar2class:Ljava/util/Map;
invoke-interface {v0, p1, p2}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
return-void
.end method
.method public final getConcreteClass(Ljava/lang/String;)Ljava/lang/Class;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/Generics;->typeVar2class:Ljava/util/Map;
invoke-interface {v0, p1}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/lang/Class;
return-object p1
.end method
.method public final getMappings()Ljava/util/Map;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Map<",
"Ljava/lang/String;",
"Ljava/lang/Class;",
">;"
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/Generics;->typeVar2class:Ljava/util/Map;
return-object v0
.end method
.method public final toString()Ljava/lang/String;
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/Generics;->typeVar2class:Ljava/util/Map;
invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,141 @@
.class public final Lcom/esotericsoftware/kryo/serializers/GenericsResolver;
.super Ljava/lang/Object;
.source "GenericsResolver.java"
# instance fields
.field private stack:Ljava/util/LinkedList;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/LinkedList<",
"Lcom/esotericsoftware/kryo/serializers/Generics;",
">;"
}
.end annotation
.end field
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
new-instance v0, Ljava/util/LinkedList;
invoke-direct {v0}, Ljava/util/LinkedList;-><init>()V
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/GenericsResolver;->stack:Ljava/util/LinkedList;
return-void
.end method
# virtual methods
.method final getConcreteClass(Ljava/lang/String;)Ljava/lang/Class;
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/GenericsResolver;->stack:Ljava/util/LinkedList;
invoke-virtual {v0}, Ljava/util/LinkedList;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_0
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_1
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Lcom/esotericsoftware/kryo/serializers/Generics;
invoke-virtual {v1, p1}, Lcom/esotericsoftware/kryo/serializers/Generics;->getConcreteClass(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v1
if-eqz v1, :cond_0
return-object v1
:cond_1
const/4 p1, 0x0
return-object p1
.end method
.method final isSet()Z
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/GenericsResolver;->stack:Ljava/util/LinkedList;
invoke-virtual {v0}, Ljava/util/LinkedList;->isEmpty()Z
move-result v0
if-nez v0, :cond_0
const/4 v0, 0x1
return v0
:cond_0
const/4 v0, 0x0
return v0
.end method
.method final popScope()V
.locals 1
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/GenericsResolver;->stack:Ljava/util/LinkedList;
invoke-virtual {v0}, Ljava/util/LinkedList;->removeFirst()Ljava/lang/Object;
return-void
.end method
.method final pushScope(Ljava/lang/Class;Lcom/esotericsoftware/kryo/serializers/Generics;)V
.locals 2
sget-boolean v0, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/StringBuilder;
const-string v1, "Settting a new generics scope for class "
invoke-direct {v0, v1}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, ": "
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string v0, "generics"
invoke-static {v0, p1}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
iget-object p1, p0, Lcom/esotericsoftware/kryo/serializers/GenericsResolver;->stack:Ljava/util/LinkedList;
invoke-virtual {p1, p2}, Ljava/util/LinkedList;->addFirst(Ljava/lang/Object;)V
return-void
.end method

View file

@ -0,0 +1,96 @@
.class Lcom/esotericsoftware/kryo/serializers/JavaSerializer$ObjectInputStreamWithKryoClassLoader;
.super Ljava/io/ObjectInputStream;
.source "JavaSerializer.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/JavaSerializer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = "ObjectInputStreamWithKryoClassLoader"
.end annotation
# instance fields
.field private final loader:Ljava/lang/ClassLoader;
# direct methods
.method constructor <init>(Ljava/io/InputStream;Lcom/esotericsoftware/kryo/Kryo;)V
.locals 0
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/io/IOException;
}
.end annotation
invoke-direct {p0, p1}, Ljava/io/ObjectInputStream;-><init>(Ljava/io/InputStream;)V
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/Kryo;->getClassLoader()Ljava/lang/ClassLoader;
move-result-object p1
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/JavaSerializer$ObjectInputStreamWithKryoClassLoader;->loader:Ljava/lang/ClassLoader;
return-void
.end method
# virtual methods
.method protected resolveClass(Ljava/io/ObjectStreamClass;)Ljava/lang/Class;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/io/ObjectStreamClass;",
")",
"Ljava/lang/Class<",
"*>;"
}
.end annotation
:try_start_0
invoke-virtual {p1}, Ljava/io/ObjectStreamClass;->getName()Ljava/lang/String;
move-result-object v0
const/4 v1, 0x0
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/JavaSerializer$ObjectInputStreamWithKryoClassLoader;->loader:Ljava/lang/ClassLoader;
invoke-static {v0, v1, v2}, Ljava/lang/Class;->forName(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
move-result-object p1
:try_end_0
.catch Ljava/lang/ClassNotFoundException; {:try_start_0 .. :try_end_0} :catch_0
return-object p1
:catch_0
move-exception v0
new-instance v1, Ljava/lang/RuntimeException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Class not found: "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {p1}, Ljava/io/ObjectStreamClass;->getName()Ljava/lang/String;
move-result-object p1
invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v1, p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v1
.end method

View file

@ -0,0 +1,109 @@
.class public Lcom/esotericsoftware/kryo/serializers/JavaSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "JavaSerializer.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/esotericsoftware/kryo/serializers/JavaSerializer$ObjectInputStreamWithKryoClassLoader;
}
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
return-void
.end method
# virtual methods
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 1
:try_start_0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/Kryo;->getGraphContext()Lcom/esotericsoftware/kryo/util/ObjectMap;
move-result-object p3
invoke-virtual {p3, p0}, Lcom/esotericsoftware/kryo/util/ObjectMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/io/ObjectInputStream;
if-nez v0, :cond_0
new-instance v0, Lcom/esotericsoftware/kryo/serializers/JavaSerializer$ObjectInputStreamWithKryoClassLoader;
invoke-direct {v0, p2, p1}, Lcom/esotericsoftware/kryo/serializers/JavaSerializer$ObjectInputStreamWithKryoClassLoader;-><init>(Ljava/io/InputStream;Lcom/esotericsoftware/kryo/Kryo;)V
invoke-virtual {p3, p0, v0}, Lcom/esotericsoftware/kryo/util/ObjectMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_0
invoke-virtual {v0}, Ljava/io/ObjectInputStream;->readObject()Ljava/lang/Object;
move-result-object p1
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-object p1
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
const-string p3, "Error during Java deserialization."
invoke-direct {p2, p3, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 1
:try_start_0
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/Kryo;->getGraphContext()Lcom/esotericsoftware/kryo/util/ObjectMap;
move-result-object p1
invoke-virtual {p1, p0}, Lcom/esotericsoftware/kryo/util/ObjectMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Ljava/io/ObjectOutputStream;
if-nez v0, :cond_0
new-instance v0, Ljava/io/ObjectOutputStream;
invoke-direct {v0, p2}, Ljava/io/ObjectOutputStream;-><init>(Ljava/io/OutputStream;)V
invoke-virtual {p1, p0, v0}, Lcom/esotericsoftware/kryo/util/ObjectMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
:cond_0
invoke-virtual {v0, p3}, Ljava/io/ObjectOutputStream;->writeObject(Ljava/lang/Object;)V
invoke-virtual {v0}, Ljava/io/ObjectOutputStream;->flush()V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
const-string p3, "Error during Java serialization."
invoke-direct {p2, p3, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
.end method

View file

@ -0,0 +1,540 @@
.class public Lcom/esotericsoftware/kryo/serializers/MapSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "MapSerializer.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;
}
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/Map;",
">;"
}
.end annotation
# instance fields
.field private keyClass:Ljava/lang/Class;
.field private keyGenericType:Ljava/lang/Class;
.field private keySerializer:Lcom/esotericsoftware/kryo/Serializer;
.field private keysCanBeNull:Z
.field private valueClass:Ljava/lang/Class;
.field private valueGenericType:Ljava/lang/Class;
.field private valueSerializer:Lcom/esotericsoftware/kryo/Serializer;
.field private valuesCanBeNull:Z
# direct methods
.method public constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keysCanBeNull:Z
iput-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valuesCanBeNull:Z
return-void
.end method
# virtual methods
.method public bridge synthetic copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/lang/Object;)Ljava/lang/Object;
.locals 0
check-cast p2, Ljava/util/Map;
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Map;)Ljava/util/Map;
move-result-object p1
return-object p1
.end method
.method public copy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Map;)Ljava/util/Map;
.locals 3
invoke-virtual {p0, p1, p2}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->createCopy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Map;)Ljava/util/Map;
move-result-object v0
invoke-interface {p2}, Ljava/util/Map;->entrySet()Ljava/util/Set;
move-result-object p2
invoke-interface {p2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p2
:goto_0
invoke-interface {p2}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_0
invoke-interface {p2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/util/Map$Entry;
invoke-interface {v1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v2
invoke-virtual {p1, v2}, Lcom/esotericsoftware/kryo/Kryo;->copy(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
invoke-interface {v1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v1
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/Kryo;->copy(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
invoke-interface {v0, v2, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_0
:cond_0
return-object v0
.end method
.method protected create(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Map;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/Map;",
">;)",
"Ljava/util/Map;"
}
.end annotation
invoke-virtual {p1, p3}, Lcom/esotericsoftware/kryo/Kryo;->newInstance(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/Map;
return-object p1
.end method
.method protected createCopy(Lcom/esotericsoftware/kryo/Kryo;Ljava/util/Map;)Ljava/util/Map;
.locals 0
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->newInstance(Ljava/lang/Class;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Ljava/util/Map;
return-object p1
.end method
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Map;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Map;
.locals 8
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/Map;",
">;)",
"Ljava/util/Map;"
}
.end annotation
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->create(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/Map;
move-result-object p3
const/4 v0, 0x1
invoke-virtual {p2, v0}, Lcom/esotericsoftware/kryo/io/Input;->readInt(Z)I
move-result v0
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keyClass:Ljava/lang/Class;
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueClass:Ljava/lang/Class;
iget-object v3, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keySerializer:Lcom/esotericsoftware/kryo/Serializer;
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keyGenericType:Ljava/lang/Class;
const/4 v5, 0x0
if-eqz v4, :cond_1
if-nez v3, :cond_0
invoke-virtual {p1, v4}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v3
:cond_0
iput-object v5, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keyGenericType:Ljava/lang/Class;
move-object v1, v4
:cond_1
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueSerializer:Lcom/esotericsoftware/kryo/Serializer;
iget-object v6, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueGenericType:Ljava/lang/Class;
if-eqz v6, :cond_3
if-nez v4, :cond_2
invoke-virtual {p1, v6}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v4
:cond_2
iput-object v5, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueGenericType:Ljava/lang/Class;
move-object v2, v6
:cond_3
invoke-virtual {p1, p3}, Lcom/esotericsoftware/kryo/Kryo;->reference(Ljava/lang/Object;)V
const/4 v5, 0x0
:goto_0
if-ge v5, v0, :cond_8
if-eqz v3, :cond_5
iget-boolean v6, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keysCanBeNull:Z
if-eqz v6, :cond_4
invoke-virtual {p1, p2, v1, v3}, Lcom/esotericsoftware/kryo/Kryo;->readObjectOrNull(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v6
goto :goto_1
:cond_4
invoke-virtual {p1, p2, v1, v3}, Lcom/esotericsoftware/kryo/Kryo;->readObject(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v6
goto :goto_1
:cond_5
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClassAndObject(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object;
move-result-object v6
:goto_1
if-eqz v4, :cond_7
iget-boolean v7, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valuesCanBeNull:Z
if-eqz v7, :cond_6
invoke-virtual {p1, p2, v2, v4}, Lcom/esotericsoftware/kryo/Kryo;->readObjectOrNull(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v7
goto :goto_2
:cond_6
invoke-virtual {p1, p2, v2, v4}, Lcom/esotericsoftware/kryo/Kryo;->readObject(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object v7
goto :goto_2
:cond_7
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/Kryo;->readClassAndObject(Lcom/esotericsoftware/kryo/io/Input;)Ljava/lang/Object;
move-result-object v7
:goto_2
invoke-interface {p3, v6, v7}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
add-int/lit8 v5, v5, 0x1
goto :goto_0
:cond_8
return-object p3
.end method
.method public setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
.locals 2
const/4 v0, 0x0
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keyGenericType:Ljava/lang/Class;
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueGenericType:Ljava/lang/Class;
if-eqz p2, :cond_1
array-length v0, p2
if-lez v0, :cond_1
const/4 v0, 0x0
aget-object v1, p2, v0
if-eqz v1, :cond_0
aget-object v1, p2, v0
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/Kryo;->isFinal(Ljava/lang/Class;)Z
move-result v1
if-eqz v1, :cond_0
aget-object v0, p2, v0
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keyGenericType:Ljava/lang/Class;
:cond_0
array-length v0, p2
const/4 v1, 0x1
if-le v0, v1, :cond_1
aget-object v0, p2, v1
if-eqz v0, :cond_1
aget-object v0, p2, v1
invoke-virtual {p1, v0}, Lcom/esotericsoftware/kryo/Kryo;->isFinal(Ljava/lang/Class;)Z
move-result p1
if-eqz p1, :cond_1
aget-object p1, p2, v1
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueGenericType:Ljava/lang/Class;
:cond_1
return-void
.end method
.method public setKeyClass(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)V
.locals 0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keyClass:Ljava/lang/Class;
iput-object p2, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keySerializer:Lcom/esotericsoftware/kryo/Serializer;
return-void
.end method
.method public setKeysCanBeNull(Z)V
.locals 0
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keysCanBeNull:Z
return-void
.end method
.method public setValueClass(Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)V
.locals 0
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueClass:Ljava/lang/Class;
iput-object p2, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueSerializer:Lcom/esotericsoftware/kryo/Serializer;
return-void
.end method
.method public setValuesCanBeNull(Z)V
.locals 0
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valuesCanBeNull:Z
return-void
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/Map;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Map;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/Map;)V
.locals 4
invoke-interface {p3}, Ljava/util/Map;->size()I
move-result v0
const/4 v1, 0x1
invoke-virtual {p2, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(IZ)I
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keySerializer:Lcom/esotericsoftware/kryo/Serializer;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keyGenericType:Ljava/lang/Class;
const/4 v2, 0x0
if-eqz v1, :cond_1
if-nez v0, :cond_0
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v0
:cond_0
iput-object v2, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keyGenericType:Ljava/lang/Class;
:cond_1
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueSerializer:Lcom/esotericsoftware/kryo/Serializer;
iget-object v3, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueGenericType:Ljava/lang/Class;
if-eqz v3, :cond_3
if-nez v1, :cond_2
invoke-virtual {p1, v3}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v1
:cond_2
iput-object v2, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valueGenericType:Ljava/lang/Class;
:cond_3
invoke-interface {p3}, Ljava/util/Map;->entrySet()Ljava/util/Set;
move-result-object p3
invoke-interface {p3}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object p3
:goto_0
invoke-interface {p3}, Ljava/util/Iterator;->hasNext()Z
move-result v2
if-eqz v2, :cond_8
invoke-interface {p3}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/util/Map$Entry;
if-eqz v0, :cond_5
iget-boolean v3, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->keysCanBeNull:Z
if-eqz v3, :cond_4
invoke-interface {v2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v3
invoke-virtual {p1, p2, v3, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeObjectOrNull(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_1
:cond_4
invoke-interface {v2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v3
invoke-virtual {p1, p2, v3, v0}, Lcom/esotericsoftware/kryo/Kryo;->writeObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_1
:cond_5
invoke-interface {v2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v3
invoke-virtual {p1, p2, v3}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
:goto_1
if-eqz v1, :cond_7
iget-boolean v3, p0, Lcom/esotericsoftware/kryo/serializers/MapSerializer;->valuesCanBeNull:Z
if-eqz v3, :cond_6
invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v2
invoke-virtual {p1, p2, v2, v1}, Lcom/esotericsoftware/kryo/Kryo;->writeObjectOrNull(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_0
:cond_6
invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v2
invoke-virtual {p1, p2, v2, v1}, Lcom/esotericsoftware/kryo/Kryo;->writeObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_0
:cond_7
invoke-interface {v2}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v2
invoke-virtual {p1, p2, v2}, Lcom/esotericsoftware/kryo/Kryo;->writeClassAndObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
goto :goto_0
:cond_8
return-void
.end method

View file

@ -0,0 +1,130 @@
.class Lcom/esotericsoftware/kryo/serializers/ObjectCachedFieldFactory;
.super Ljava/lang/Object;
.source "ObjectCachedFieldFactory.java"
# interfaces
.implements Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldFactory;
# direct methods
.method constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public createCachedField(Ljava/lang/Class;Ljava/lang/reflect/Field;Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
.locals 0
invoke-virtual {p1}, Ljava/lang/Class;->isPrimitive()Z
move-result p2
if-eqz p2, :cond_8
sget-object p2, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_0
new-instance p1, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
goto :goto_0
:cond_0
sget-object p2, Ljava/lang/Byte;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_1
new-instance p1, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
goto :goto_0
:cond_1
sget-object p2, Ljava/lang/Character;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_2
new-instance p1, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
goto :goto_0
:cond_2
sget-object p2, Ljava/lang/Short;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_3
new-instance p1, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
goto :goto_0
:cond_3
sget-object p2, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_4
new-instance p1, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
goto :goto_0
:cond_4
sget-object p2, Ljava/lang/Long;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_5
new-instance p1, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
goto :goto_0
:cond_5
sget-object p2, Ljava/lang/Float;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_6
new-instance p1, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
goto :goto_0
:cond_6
sget-object p2, Ljava/lang/Double;->TYPE:Ljava/lang/Class;
if-ne p1, p2, :cond_7
new-instance p1, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
goto :goto_0
:cond_7
new-instance p1, Lcom/esotericsoftware/kryo/serializers/ObjectField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
goto :goto_0
:cond_8
new-instance p1, Lcom/esotericsoftware/kryo/serializers/ObjectField;
invoke-direct {p1, p3}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
:goto_0
return-object p1
.end method

View file

@ -0,0 +1,212 @@
.class final Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;
.super Lcom/esotericsoftware/kryo/serializers/ObjectField;
.source "ObjectField.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/ObjectField;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "ObjectBooleanField"
.end annotation
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v1, p1}, Ljava/lang/reflect/Field;->getBoolean(Ljava/lang/Object;)Z
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setBoolean(Ljava/lang/Object;Z)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p1}, Ljava/lang/reflect/Field;->getBoolean(Ljava/lang/Object;)Z
move-result p1
invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object p1
return-object p1
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;->field:Ljava/lang/reflect/Field;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readBoolean()Z
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setBoolean(Ljava/lang/Object;Z)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p2}, Ljava/lang/reflect/Field;->getBoolean(Ljava/lang/Object;)Z
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeBoolean(Z)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method

View file

@ -0,0 +1,212 @@
.class final Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;
.super Lcom/esotericsoftware/kryo/serializers/ObjectField;
.source "ObjectField.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/ObjectField;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "ObjectByteField"
.end annotation
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v1, p1}, Ljava/lang/reflect/Field;->getByte(Ljava/lang/Object;)B
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setByte(Ljava/lang/Object;B)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p1}, Ljava/lang/reflect/Field;->getByte(Ljava/lang/Object;)B
move-result p1
invoke-static {p1}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
move-result-object p1
return-object p1
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;->field:Ljava/lang/reflect/Field;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readByte()B
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setByte(Ljava/lang/Object;B)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p2}, Ljava/lang/reflect/Field;->getByte(Ljava/lang/Object;)B
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeByte(B)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method

View file

@ -0,0 +1,212 @@
.class final Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;
.super Lcom/esotericsoftware/kryo/serializers/ObjectField;
.source "ObjectField.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/ObjectField;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "ObjectCharField"
.end annotation
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v1, p1}, Ljava/lang/reflect/Field;->getChar(Ljava/lang/Object;)C
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setChar(Ljava/lang/Object;C)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p1}, Ljava/lang/reflect/Field;->getChar(Ljava/lang/Object;)C
move-result p1
invoke-static {p1}, Ljava/lang/Character;->valueOf(C)Ljava/lang/Character;
move-result-object p1
return-object p1
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;->field:Ljava/lang/reflect/Field;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readChar()C
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setChar(Ljava/lang/Object;C)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p2}, Ljava/lang/reflect/Field;->getChar(Ljava/lang/Object;)C
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeChar(C)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method

View file

@ -0,0 +1,212 @@
.class final Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;
.super Lcom/esotericsoftware/kryo/serializers/ObjectField;
.source "ObjectField.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/ObjectField;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "ObjectDoubleField"
.end annotation
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 3
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v1, p1}, Ljava/lang/reflect/Field;->getDouble(Ljava/lang/Object;)D
move-result-wide v1
invoke-virtual {v0, p2, v1, v2}, Ljava/lang/reflect/Field;->setDouble(Ljava/lang/Object;D)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p1}, Ljava/lang/reflect/Field;->getDouble(Ljava/lang/Object;)D
move-result-wide v0
invoke-static {v0, v1}, Ljava/lang/Double;->valueOf(D)Ljava/lang/Double;
move-result-object p1
return-object p1
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 3
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;->field:Ljava/lang/reflect/Field;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readDouble()D
move-result-wide v1
invoke-virtual {v0, p2, v1, v2}, Ljava/lang/reflect/Field;->setDouble(Ljava/lang/Object;D)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p2}, Ljava/lang/reflect/Field;->getDouble(Ljava/lang/Object;)D
move-result-wide v0
invoke-virtual {p1, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeDouble(D)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method

View file

@ -0,0 +1,212 @@
.class final Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;
.super Lcom/esotericsoftware/kryo/serializers/ObjectField;
.source "ObjectField.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/ObjectField;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "ObjectFloatField"
.end annotation
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v1, p1}, Ljava/lang/reflect/Field;->getFloat(Ljava/lang/Object;)F
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setFloat(Ljava/lang/Object;F)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p1}, Ljava/lang/reflect/Field;->getFloat(Ljava/lang/Object;)F
move-result p1
invoke-static {p1}, Ljava/lang/Float;->valueOf(F)Ljava/lang/Float;
move-result-object p1
return-object p1
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;->field:Ljava/lang/reflect/Field;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readFloat()F
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setFloat(Ljava/lang/Object;F)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p2}, Ljava/lang/reflect/Field;->getFloat(Ljava/lang/Object;)F
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeFloat(F)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method

View file

@ -0,0 +1,246 @@
.class final Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;
.super Lcom/esotericsoftware/kryo/serializers/ObjectField;
.source "ObjectField.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/ObjectField;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "ObjectIntField"
.end annotation
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v1, p1}, Ljava/lang/reflect/Field;->getInt(Ljava/lang/Object;)I
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setInt(Ljava/lang/Object;I)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p1}, Ljava/lang/reflect/Field;->getInt(Ljava/lang/Object;)I
move-result p1
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
return-object p1
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->varIntsEnabled:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->field:Ljava/lang/reflect/Field;
const/4 v1, 0x0
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/io/Input;->readInt(Z)I
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setInt(Ljava/lang/Object;I)V
return-void
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->field:Ljava/lang/reflect/Field;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readInt()I
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setInt(Ljava/lang/Object;I)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->varIntsEnabled:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p2}, Ljava/lang/reflect/Field;->getInt(Ljava/lang/Object;)I
move-result p2
const/4 v0, 0x0
invoke-virtual {p1, p2, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(IZ)I
return-void
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p2}, Ljava/lang/reflect/Field;->getInt(Ljava/lang/Object;)I
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(I)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method

View file

@ -0,0 +1,246 @@
.class final Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;
.super Lcom/esotericsoftware/kryo/serializers/ObjectField;
.source "ObjectField.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/ObjectField;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "ObjectLongField"
.end annotation
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 3
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v1, p1}, Ljava/lang/reflect/Field;->getLong(Ljava/lang/Object;)J
move-result-wide v1
invoke-virtual {v0, p2, v1, v2}, Ljava/lang/reflect/Field;->setLong(Ljava/lang/Object;J)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p1}, Ljava/lang/reflect/Field;->getLong(Ljava/lang/Object;)J
move-result-wide v0
invoke-static {v0, v1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object p1
return-object p1
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 3
:try_start_0
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->varIntsEnabled:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->field:Ljava/lang/reflect/Field;
const/4 v1, 0x0
invoke-virtual {p1, v1}, Lcom/esotericsoftware/kryo/io/Input;->readLong(Z)J
move-result-wide v1
invoke-virtual {v0, p2, v1, v2}, Ljava/lang/reflect/Field;->setLong(Ljava/lang/Object;J)V
return-void
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->field:Ljava/lang/reflect/Field;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readLong()J
move-result-wide v1
invoke-virtual {v0, p2, v1, v2}, Ljava/lang/reflect/Field;->setLong(Ljava/lang/Object;J)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->varIntsEnabled:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p2}, Ljava/lang/reflect/Field;->getLong(Ljava/lang/Object;)J
move-result-wide v0
const/4 p2, 0x0
invoke-virtual {p1, v0, v1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(JZ)I
return-void
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p2}, Ljava/lang/reflect/Field;->getLong(Ljava/lang/Object;)J
move-result-wide v0
invoke-virtual {p1, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(J)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method

View file

@ -0,0 +1,212 @@
.class final Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;
.super Lcom/esotericsoftware/kryo/serializers/ObjectField;
.source "ObjectField.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/ObjectField;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x18
name = "ObjectShortField"
.end annotation
# direct methods
.method public constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 0
invoke-direct {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;-><init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
return-void
.end method
# virtual methods
.method public final copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v1, p1}, Ljava/lang/reflect/Field;->getShort(Ljava/lang/Object;)S
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setShort(Ljava/lang/Object;S)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p1}, Ljava/lang/reflect/Field;->getShort(Ljava/lang/Object;)S
move-result p1
invoke-static {p1}, Ljava/lang/Short;->valueOf(S)Ljava/lang/Short;
move-result-object p1
return-object p1
.end method
.method public final read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;->field:Ljava/lang/reflect/Field;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readShort()S
move-result p1
invoke-virtual {v0, p2, p1}, Ljava/lang/reflect/Field;->setShort(Ljava/lang/Object;S)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method
.method public final write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 1
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p2}, Ljava/lang/reflect/Field;->getShort(Ljava/lang/Object;)S
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeShort(I)V
:try_end_0
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v0, " ("
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;->type:Ljava/lang/Class;
invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v0
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v0, ")"
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
.end method

View file

@ -0,0 +1,769 @@
.class Lcom/esotericsoftware/kryo/serializers/ObjectField;
.super Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
.source "ObjectField.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectDoubleField;,
Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectLongField;,
Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectCharField;,
Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectBooleanField;,
Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectByteField;,
Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectShortField;,
Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectFloatField;,
Lcom/esotericsoftware/kryo/serializers/ObjectField$ObjectIntField;
}
.end annotation
# instance fields
.field final fieldSerializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
.field public generics:[Ljava/lang/Class;
.field final kryo:Lcom/esotericsoftware/kryo/Kryo;
.field final type:Ljava/lang/Class;
# direct methods
.method constructor <init>(Lcom/esotericsoftware/kryo/serializers/FieldSerializer;)V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;-><init>()V
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->fieldSerializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
iget-object v0, p1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->kryo:Lcom/esotericsoftware/kryo/Kryo;
iput-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
iget-object p1, p1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->type:Ljava/lang/Class;
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->type:Ljava/lang/Class;
return-void
.end method
# virtual methods
.method public copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 4
const-string v0, ")"
const-string v1, " ("
:try_start_0
iget v2, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->accessIndex:I
const/4 v3, -0x1
if-eq v2, v3, :cond_0
iget-object p1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->fieldSerializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
iget-object p1, p1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->access:Ljava/lang/Object;
check-cast p1, Lcom/esotericsoftware/b/c;
iget-object p2, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {p1}, Lcom/esotericsoftware/b/c;->eM()Ljava/lang/Object;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/Kryo;->copy(Ljava/lang/Object;)Ljava/lang/Object;
return-void
:cond_0
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {p0, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;->getField(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
invoke-virtual {v2, p1}, Lcom/esotericsoftware/kryo/Kryo;->copy(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
invoke-virtual {p0, p2, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;->setField(Ljava/lang/Object;Ljava/lang/Object;)V
:try_end_0
.catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_2
.catch Lcom/esotericsoftware/kryo/KryoException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_0
return-void
:catch_0
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->type:Ljava/lang/Class;
invoke-virtual {v1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
:catch_1
move-exception p1
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->type:Ljava/lang/Class;
invoke-virtual {v1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p1
:catch_2
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Error accessing field: "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->type:Ljava/lang/Class;
invoke-virtual {v1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p2, v0, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
.end method
.method public getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p1}, Ljava/lang/reflect/Field;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 6
const-string v0, ")"
const-string v1, " ("
:try_start_0
sget-boolean v2, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v2, :cond_0
const-string v2, "kryo"
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "Read field: "
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v3, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->type:Ljava/lang/Class;
invoke-virtual {v4}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, ") pos="
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->position()I
move-result v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v2, v3}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->valueClass:Ljava/lang/Class;
iget-object v3, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->serializer:Lcom/esotericsoftware/kryo/Serializer;
if-nez v2, :cond_3
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {v2, p1}, Lcom/esotericsoftware/kryo/Kryo;->readClass(Lcom/esotericsoftware/kryo/io/Input;)Lcom/esotericsoftware/kryo/Registration;
move-result-object v2
if-nez v2, :cond_1
const/4 p1, 0x0
goto :goto_0
:cond_1
if-nez v3, :cond_2
invoke-virtual {v2}, Lcom/esotericsoftware/kryo/Registration;->getSerializer()Lcom/esotericsoftware/kryo/Serializer;
move-result-object v3
:cond_2
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
iget-object v5, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->generics:[Ljava/lang/Class;
invoke-virtual {v3, v4, v5}, Lcom/esotericsoftware/kryo/Serializer;->setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {v2}, Lcom/esotericsoftware/kryo/Registration;->getType()Ljava/lang/Class;
move-result-object v2
invoke-virtual {v4, p1, v2, v3}, Lcom/esotericsoftware/kryo/Kryo;->readObject(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object p1
goto :goto_0
:cond_3
if-nez v3, :cond_4
iget-object v3, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->valueClass:Ljava/lang/Class;
invoke-virtual {v3, v4}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v3
iput-object v3, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->serializer:Lcom/esotericsoftware/kryo/Serializer;
:cond_4
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
iget-object v5, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->generics:[Ljava/lang/Class;
invoke-virtual {v3, v4, v5}, Lcom/esotericsoftware/kryo/Serializer;->setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
iget-boolean v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->canBeNull:Z
if-eqz v4, :cond_5
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {v4, p1, v2, v3}, Lcom/esotericsoftware/kryo/Kryo;->readObjectOrNull(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object p1
goto :goto_0
:cond_5
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {v4, p1, v2, v3}, Lcom/esotericsoftware/kryo/Kryo;->readObject(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;Lcom/esotericsoftware/kryo/Serializer;)Ljava/lang/Object;
move-result-object p1
:goto_0
invoke-virtual {p0, p2, p1}, Lcom/esotericsoftware/kryo/serializers/ObjectField;->setField(Ljava/lang/Object;Ljava/lang/Object;)V
:try_end_0
.catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_2
.catch Lcom/esotericsoftware/kryo/KryoException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
return-void
:catchall_0
move-exception p1
goto :goto_1
:catch_0
move-exception p1
:try_start_1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->type:Ljava/lang/Class;
invoke-virtual {v1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p2
:catch_1
move-exception p1
new-instance p2, Ljava/lang/StringBuilder;
invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->type:Ljava/lang/Class;
invoke-virtual {v1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p1
:catch_2
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Error accessing field: "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->type:Ljava/lang/Class;
invoke-virtual {v1}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
invoke-direct {p2, v0, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw p2
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:goto_1
throw p1
.end method
.method public setField(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 1
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->field:Ljava/lang/reflect/Field;
invoke-virtual {v0, p1, p2}, Ljava/lang/reflect/Field;->set(Ljava/lang/Object;Ljava/lang/Object;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 6
const-string v0, ")"
const-string v1, " ("
:try_start_0
sget-boolean v2, Lcom/esotericsoftware/a/a;->Em:Z
if-eqz v2, :cond_0
const-string v2, "kryo"
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "Write field: "
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v3, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v4
invoke-virtual {v4}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string v4, ") pos="
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Output;->position()I
move-result v4
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v3
invoke-static {v2, v3}, Lcom/esotericsoftware/a/a;->s(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
invoke-virtual {p0, p2}, Lcom/esotericsoftware/kryo/serializers/ObjectField;->getField(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
iget-object v3, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->serializer:Lcom/esotericsoftware/kryo/Serializer;
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->valueClass:Ljava/lang/Class;
if-nez v4, :cond_3
if-nez v2, :cond_1
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
const/4 v3, 0x0
invoke-virtual {v2, p1, v3}, Lcom/esotericsoftware/kryo/Kryo;->writeClass(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Registration;
return-void
:cond_1
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {v2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v5
invoke-virtual {v4, p1, v5}, Lcom/esotericsoftware/kryo/Kryo;->writeClass(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Registration;
move-result-object v4
if-nez v3, :cond_2
invoke-virtual {v4}, Lcom/esotericsoftware/kryo/Registration;->getSerializer()Lcom/esotericsoftware/kryo/Serializer;
move-result-object v3
:cond_2
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
iget-object v5, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->generics:[Ljava/lang/Class;
invoke-virtual {v3, v4, v5}, Lcom/esotericsoftware/kryo/Serializer;->setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {v4, p1, v2, v3}, Lcom/esotericsoftware/kryo/Kryo;->writeObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
return-void
:cond_3
if-nez v3, :cond_4
iget-object v3, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->valueClass:Ljava/lang/Class;
invoke-virtual {v3, v4}, Lcom/esotericsoftware/kryo/Kryo;->getSerializer(Ljava/lang/Class;)Lcom/esotericsoftware/kryo/Serializer;
move-result-object v3
iput-object v3, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->serializer:Lcom/esotericsoftware/kryo/Serializer;
:cond_4
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
iget-object v5, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->generics:[Ljava/lang/Class;
invoke-virtual {v3, v4, v5}, Lcom/esotericsoftware/kryo/Serializer;->setGenerics(Lcom/esotericsoftware/kryo/Kryo;[Ljava/lang/Class;)V
iget-boolean v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->canBeNull:Z
if-eqz v4, :cond_5
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {v4, p1, v2, v3}, Lcom/esotericsoftware/kryo/Kryo;->writeObjectOrNull(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
return-void
:cond_5
if-eqz v2, :cond_6
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
invoke-virtual {v4, p1, v2, v3}, Lcom/esotericsoftware/kryo/Kryo;->writeObject(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
return-void
:cond_6
new-instance p1, Lcom/esotericsoftware/kryo/KryoException;
new-instance v2, Ljava/lang/StringBuilder;
const-string v3, "Field value is null but canBeNull is false: "
invoke-direct {v2, v3}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v3
invoke-virtual {v3}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v3
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-direct {p1, v2}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;)V
throw p1
:try_end_0
.catch Ljava/lang/IllegalAccessException; {:try_start_0 .. :try_end_0} :catch_2
.catch Lcom/esotericsoftware/kryo/KryoException; {:try_start_0 .. :try_end_0} :catch_1
.catch Ljava/lang/RuntimeException; {:try_start_0 .. :try_end_0} :catch_0
.catchall {:try_start_0 .. :try_end_0} :catchall_0
:catchall_0
move-exception p1
goto :goto_0
:catch_0
move-exception p1
:try_start_1
new-instance v2, Lcom/esotericsoftware/kryo/KryoException;
invoke-direct {v2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/Throwable;)V
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v2, p1}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw v2
:catch_1
move-exception p1
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p2
invoke-virtual {v2, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/KryoException;->addTrace(Ljava/lang/String;)V
throw p1
:catch_2
move-exception p1
new-instance v2, Lcom/esotericsoftware/kryo/KryoException;
new-instance v3, Ljava/lang/StringBuilder;
const-string v4, "Error accessing field: "
invoke-direct {v3, v4}, Ljava/lang/StringBuilder;-><init>(Ljava/lang/String;)V
invoke-virtual {v3, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object p2
invoke-virtual {p2}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object p2
invoke-virtual {v3, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p2
invoke-direct {v2, p2, p1}, Lcom/esotericsoftware/kryo/KryoException;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
throw v2
:try_end_1
.catchall {:try_start_1 .. :try_end_1} :catchall_0
:goto_0
throw p1
.end method

View file

@ -0,0 +1,14 @@
.class synthetic Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$1;
.super Ljava/lang/Object;
.source "OptionalSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/OptionalSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x1008
name = null
.end annotation

View file

@ -0,0 +1,129 @@
.class Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$OptionalDoubleSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "OptionalSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/OptionalSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = "OptionalDoubleSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/OptionalDouble;",
">;"
}
.end annotation
# direct methods
.method private constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$OptionalDoubleSerializer;->setImmutable(Z)V
return-void
.end method
.method synthetic constructor <init>(Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$1;)V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$OptionalDoubleSerializer;-><init>()V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$OptionalDoubleSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/OptionalDouble;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/OptionalDouble;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/OptionalDouble;",
">;)",
"Ljava/util/OptionalDouble;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readBoolean()Z
move-result p1
if-eqz p1, :cond_0
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readDouble()D
move-result-wide p1
invoke-static {p1, p2}, Ljava/util/OptionalDouble;->of(D)Ljava/util/OptionalDouble;
move-result-object p1
return-object p1
:cond_0
invoke-static {}, Ljava/util/OptionalDouble;->empty()Ljava/util/OptionalDouble;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/OptionalDouble;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$OptionalDoubleSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/OptionalDouble;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/OptionalDouble;)V
.locals 2
invoke-virtual {p3}, Ljava/util/OptionalDouble;->isPresent()Z
move-result p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeBoolean(Z)V
invoke-virtual {p3}, Ljava/util/OptionalDouble;->isPresent()Z
move-result p1
if-eqz p1, :cond_0
invoke-virtual {p3}, Ljava/util/OptionalDouble;->getAsDouble()D
move-result-wide v0
invoke-virtual {p2, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeDouble(D)V
:cond_0
return-void
.end method

View file

@ -0,0 +1,129 @@
.class Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$OptionalIntSerializer;
.super Lcom/esotericsoftware/kryo/Serializer;
.source "OptionalSerializers.java"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/OptionalSerializers;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x8
name = "OptionalIntSerializer"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Lcom/esotericsoftware/kryo/Serializer<",
"Ljava/util/OptionalInt;",
">;"
}
.end annotation
# direct methods
.method private constructor <init>()V
.locals 1
invoke-direct {p0}, Lcom/esotericsoftware/kryo/Serializer;-><init>()V
const/4 v0, 0x1
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$OptionalIntSerializer;->setImmutable(Z)V
return-void
.end method
.method synthetic constructor <init>(Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$1;)V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$OptionalIntSerializer;-><init>()V
return-void
.end method
# virtual methods
.method public bridge synthetic read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/lang/Object;
.locals 0
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$OptionalIntSerializer;->read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/OptionalInt;
move-result-object p1
return-object p1
.end method
.method public read(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Class;)Ljava/util/OptionalInt;
.locals 0
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Lcom/esotericsoftware/kryo/Kryo;",
"Lcom/esotericsoftware/kryo/io/Input;",
"Ljava/lang/Class<",
"Ljava/util/OptionalInt;",
">;)",
"Ljava/util/OptionalInt;"
}
.end annotation
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readBoolean()Z
move-result p1
if-eqz p1, :cond_0
invoke-virtual {p2}, Lcom/esotericsoftware/kryo/io/Input;->readInt()I
move-result p1
invoke-static {p1}, Ljava/util/OptionalInt;->of(I)Ljava/util/OptionalInt;
move-result-object p1
return-object p1
:cond_0
invoke-static {}, Ljava/util/OptionalInt;->empty()Ljava/util/OptionalInt;
move-result-object p1
return-object p1
.end method
.method public bridge synthetic write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 0
check-cast p3, Ljava/util/OptionalInt;
invoke-virtual {p0, p1, p2, p3}, Lcom/esotericsoftware/kryo/serializers/OptionalSerializers$OptionalIntSerializer;->write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/OptionalInt;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/Kryo;Lcom/esotericsoftware/kryo/io/Output;Ljava/util/OptionalInt;)V
.locals 0
invoke-virtual {p3}, Ljava/util/OptionalInt;->isPresent()Z
move-result p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeBoolean(Z)V
invoke-virtual {p3}, Ljava/util/OptionalInt;->isPresent()Z
move-result p1
if-eqz p1, :cond_0
invoke-virtual {p3}, Ljava/util/OptionalInt;->getAsInt()I
move-result p1
invoke-virtual {p2, p1}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(I)V
:cond_0
return-void
.end method

Some files were not shown because too many files have changed in this diff Show more