Changes of com.discord v1029

This commit is contained in:
root 2020-01-28 01:59:01 +01:00
parent 39c2580941
commit 908812f63a
1759 changed files with 82194 additions and 51845 deletions

View file

@ -1,109 +0,0 @@
.class public final LWidgetFriendsAddUserRequestsModel$a;
.super Ljava/lang/Object;
.source "WidgetFriendsAddUserRequestsModel.kt"
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = LWidgetFriendsAddUserRequestsModel;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x19
name = "a"
.end annotation
# direct methods
.method public synthetic constructor <init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public final a()Lrx/Observable;
.locals 4
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Lrx/Observable<",
"LWidgetFriendsAddUserRequestsModel;",
">;"
}
.end annotation
sget-object v0, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion;
invoke-virtual {v0}, Lcom/discord/stores/StoreStream$Companion;->getUserRelationships()Lcom/discord/stores/StoreUserRelationships;
move-result-object v0
const/4 v1, 0x4
invoke-virtual {v0, v1}, Lcom/discord/stores/StoreUserRelationships;->getForType(I)Lrx/Observable;
move-result-object v0
sget-object v1, LWidgetFriendsAddUserRequestsModel$a$a;->e:LWidgetFriendsAddUserRequestsModel$a$a;
invoke-virtual {v0, v1}, Lrx/Observable;->f(Lb0/l/i;)Lrx/Observable;
move-result-object v0
sget-object v1, Lcom/discord/stores/StoreStream;->Companion:Lcom/discord/stores/StoreStream$Companion;
invoke-virtual {v1}, Lcom/discord/stores/StoreStream$Companion;->getUserRelationships()Lcom/discord/stores/StoreUserRelationships;
move-result-object v1
const/4 v2, 0x3
invoke-virtual {v1, v2}, Lcom/discord/stores/StoreUserRelationships;->getForType(I)Lrx/Observable;
move-result-object v1
sget-object v2, LWidgetFriendsAddUserRequestsModel$a$a;->f:LWidgetFriendsAddUserRequestsModel$a$a;
invoke-virtual {v1, v2}, Lrx/Observable;->f(Lb0/l/i;)Lrx/Observable;
move-result-object v1
sget-object v2, LWidgetFriendsAddUserRequestsModel$a$b;->d:LWidgetFriendsAddUserRequestsModel$a$b;
if-eqz v2, :cond_0
new-instance v3, Lo;
invoke-direct {v3, v2}, Lo;-><init>(Lkotlin/jvm/functions/Function2;)V
move-object v2, v3
:cond_0
check-cast v2, Lrx/functions/Func2;
invoke-static {v0, v1, v2}, Lrx/Observable;->a(Lrx/Observable;Lrx/Observable;Lrx/functions/Func2;)Lrx/Observable;
move-result-object v0
const-string v1, "Observable\n .comb\u2026erRequestsModel\n )"
invoke-static {v0, v1}, Lt/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
invoke-static {v0}, Lcom/discord/utilities/rx/ObservableExtensionsKt;->computationLatest(Lrx/Observable;)Lrx/Observable;
move-result-object v0
invoke-virtual {v0}, Lrx/Observable;->a()Lrx/Observable;
move-result-object v0
const-string v1, "Observable\n .comb\u2026 .distinctUntilChanged()"
invoke-static {v0, v1}, Lt/u/b/j;->checkExpressionValueIsNotNull(Ljava/lang/Object;Ljava/lang/String;)V
return-object v0
.end method

View file

@ -1,242 +0,0 @@
.class public final LWidgetFriendsAddUserRequestsModel;
.super Ljava/lang/Object;
.source "WidgetFriendsAddUserRequestsModel.kt"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
LWidgetFriendsAddUserRequestsModel$a;
}
.end annotation
# static fields
.field public static final c:LWidgetFriendsAddUserRequestsModel$a;
# instance fields
.field public final a:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Ljava/lang/Long;",
">;"
}
.end annotation
.end field
.field public final b:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Ljava/lang/Long;",
">;"
}
.end annotation
.end field
# direct methods
.method public static constructor <clinit>()V
.locals 2
new-instance v0, LWidgetFriendsAddUserRequestsModel$a;
const/4 v1, 0x0
invoke-direct {v0, v1}, LWidgetFriendsAddUserRequestsModel$a;-><init>(Lkotlin/jvm/internal/DefaultConstructorMarker;)V
sput-object v0, LWidgetFriendsAddUserRequestsModel;->c:LWidgetFriendsAddUserRequestsModel$a;
return-void
.end method
.method public constructor <init>(Ljava/util/Set;Ljava/util/Set;)V
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/util/Set<",
"Ljava/lang/Long;",
">;",
"Ljava/util/Set<",
"Ljava/lang/Long;",
">;)V"
}
.end annotation
const/4 v0, 0x0
if-eqz p1, :cond_1
if-eqz p2, :cond_0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-object p1, p0, LWidgetFriendsAddUserRequestsModel;->a:Ljava/util/Set;
iput-object p2, p0, LWidgetFriendsAddUserRequestsModel;->b:Ljava/util/Set;
return-void
:cond_0
const-string p1, "incomingIds"
invoke-static {p1}, Lt/u/b/j;->a(Ljava/lang/String;)V
throw v0
:cond_1
const-string p1, "outgoingIds"
invoke-static {p1}, Lt/u/b/j;->a(Ljava/lang/String;)V
throw v0
.end method
# virtual methods
.method public final a()Ljava/util/Set;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Set<",
"Ljava/lang/Long;",
">;"
}
.end annotation
iget-object v0, p0, LWidgetFriendsAddUserRequestsModel;->b:Ljava/util/Set;
return-object v0
.end method
.method public final b()Ljava/util/Set;
.locals 1
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Set<",
"Ljava/lang/Long;",
">;"
}
.end annotation
iget-object v0, p0, LWidgetFriendsAddUserRequestsModel;->a:Ljava/util/Set;
return-object v0
.end method
.method public equals(Ljava/lang/Object;)Z
.locals 2
if-eq p0, p1, :cond_1
instance-of v0, p1, LWidgetFriendsAddUserRequestsModel;
if-eqz v0, :cond_0
check-cast p1, LWidgetFriendsAddUserRequestsModel;
iget-object v0, p0, LWidgetFriendsAddUserRequestsModel;->a:Ljava/util/Set;
iget-object v1, p1, LWidgetFriendsAddUserRequestsModel;->a:Ljava/util/Set;
invoke-static {v0, v1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)Z
move-result v0
if-eqz v0, :cond_0
iget-object v0, p0, LWidgetFriendsAddUserRequestsModel;->b:Ljava/util/Set;
iget-object p1, p1, LWidgetFriendsAddUserRequestsModel;->b:Ljava/util/Set;
invoke-static {v0, p1}, Lt/u/b/j;->areEqual(Ljava/lang/Object;Ljava/lang/Object;)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 public hashCode()I
.locals 3
iget-object v0, p0, LWidgetFriendsAddUserRequestsModel;->a:Ljava/util/Set;
const/4 v1, 0x0
if-eqz v0, :cond_0
invoke-virtual {v0}, Ljava/lang/Object;->hashCode()I
move-result v0
goto :goto_0
:cond_0
const/4 v0, 0x0
:goto_0
mul-int/lit8 v0, v0, 0x1f
iget-object v2, p0, LWidgetFriendsAddUserRequestsModel;->b:Ljava/util/Set;
if-eqz v2, :cond_1
invoke-virtual {v2}, Ljava/lang/Object;->hashCode()I
move-result v1
:cond_1
add-int/2addr v0, v1
return v0
.end method
.method public toString()Ljava/lang/String;
.locals 2
const-string v0, "WidgetFriendsAddUserRequestsModel(outgoingIds="
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
iget-object v1, p0, LWidgetFriendsAddUserRequestsModel;->a:Ljava/util/Set;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, ", incomingIds="
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
iget-object v1, p0, LWidgetFriendsAddUserRequestsModel;->b:Ljava/util/Set;
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
const-string v1, ")"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
return-object v0
.end method

View file

@ -0,0 +1,74 @@
.class public 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 = 0x19
name = "AsmBooleanField"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p1, v1}, Le/i/b/c;->b(Ljava/lang/Object;I)Z
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;IZ)V
return-void
.end method
.method public read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readBoolean()Z
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;IZ)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->b(Ljava/lang/Object;I)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,74 @@
.class public 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 = 0x19
name = "AsmByteField"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p1, v1}, Le/i/b/c;->c(Ljava/lang/Object;I)B
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;IB)V
return-void
.end method
.method public read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readByte()B
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;IB)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->c(Ljava/lang/Object;I)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 public 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 = 0x409
name = "AsmCachedField"
.end annotation
# direct methods
.method public 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,74 @@
.class public 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 = 0x19
name = "AsmCharField"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p1, v1}, Le/i/b/c;->d(Ljava/lang/Object;I)C
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;IC)V
return-void
.end method
.method public read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readChar()C
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;IC)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->d(Ljava/lang/Object;I)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,74 @@
.class public 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 = 0x19
name = "AsmDoubleField"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 4
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p1, v1}, Le/i/b/c;->e(Ljava/lang/Object;I)D
move-result-wide v2
invoke-virtual {v0, p2, v1, v2, v3}, Le/i/b/c;->a(Ljava/lang/Object;ID)V
return-void
.end method
.method public read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 4
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readDouble()D
move-result-wide v2
invoke-virtual {v0, p2, v1, v2, v3}, Le/i/b/c;->a(Ljava/lang/Object;ID)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->e(Ljava/lang/Object;I)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,74 @@
.class public 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 = 0x19
name = "AsmFloatField"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p1, v1}, Le/i/b/c;->f(Ljava/lang/Object;I)F
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;IF)V
return-void
.end method
.method public read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readFloat()F
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;IF)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->f(Ljava/lang/Object;I)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,114 @@
.class public 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 = 0x19
name = "AsmIntField"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p1, v1}, Le/i/b/c;->g(Ljava/lang/Object;I)I
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;II)V
return-void
.end method
.method public read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 3
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->varIntsEnabled:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
const/4 v2, 0x0
invoke-virtual {p1, v2}, Lcom/esotericsoftware/kryo/io/Input;->readInt(Z)I
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;II)V
goto :goto_0
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readInt()I
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;II)V
:goto_0
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->varIntsEnabled:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->g(Ljava/lang/Object;I)I
move-result p2
const/4 v0, 0x0
invoke-virtual {p1, p2, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(IZ)I
goto :goto_0
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->g(Ljava/lang/Object;I)I
move-result p2
invoke-virtual {p1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeInt(I)V
:goto_0
return-void
.end method

View file

@ -0,0 +1,114 @@
.class public 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 = 0x19
name = "AsmLongField"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 4
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p1, v1}, Le/i/b/c;->h(Ljava/lang/Object;I)J
move-result-wide v2
invoke-virtual {v0, p2, v1, v2, v3}, Le/i/b/c;->a(Ljava/lang/Object;IJ)V
return-void
.end method
.method public read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 4
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->varIntsEnabled:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
const/4 v2, 0x0
invoke-virtual {p1, v2}, Lcom/esotericsoftware/kryo/io/Input;->readLong(Z)J
move-result-wide v2
invoke-virtual {v0, p2, v1, v2, v3}, Le/i/b/c;->a(Ljava/lang/Object;IJ)V
goto :goto_0
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readLong()J
move-result-wide v2
invoke-virtual {v0, p2, v1, v2, v3}, Le/i/b/c;->a(Ljava/lang/Object;IJ)V
:goto_0
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->varIntsEnabled:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->h(Ljava/lang/Object;I)J
move-result-wide v0
const/4 p2, 0x0
invoke-virtual {p1, v0, v1, p2}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(JZ)I
goto :goto_0
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->h(Ljava/lang/Object;I)J
move-result-wide v0
invoke-virtual {p1, v0, v1}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(J)V
:goto_0
return-void
.end method

View file

@ -0,0 +1,177 @@
.class public 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 = 0x19
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 copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 7
const-string v0, ")"
const-string v1, " ("
:try_start_0
iget v2, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
const/4 v3, -0x1
if-eq v2, v3, :cond_0
iget-object v2, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v3, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
iget-object v4, p0, Lcom/esotericsoftware/kryo/serializers/ObjectField;->kryo:Lcom/esotericsoftware/kryo/Kryo;
iget-object v5, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v6, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v5, p1, v6}, Le/i/b/c;->a(Ljava/lang/Object;I)Ljava/lang/Object;
move-result-object p1
invoke-virtual {v4, p1}, Lcom/esotericsoftware/kryo/Kryo;->copy(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p1
invoke-virtual {v2, p2, v3, p1}, Le/i/b/c;->a(Ljava/lang/Object;ILjava/lang/Object;)V
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
: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 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-static {v1, p1, v0, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)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-static {v1, p2, v0, p1}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p1
.end method
.method public getField(Ljava/lang/Object;)Ljava/lang/Object;
.locals 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
const/4 v1, -0x1
if-eq v0, v1, :cond_0
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
invoke-virtual {v1, p1, v0}, Le/i/b/c;->a(Ljava/lang/Object;I)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 setField(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
.annotation system Ldalvik/annotation/Throws;
value = {
Ljava/lang/IllegalArgumentException;,
Ljava/lang/IllegalAccessException;
}
.end annotation
iget v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
const/4 v1, -0x1
if-eq v0, v1, :cond_0
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
invoke-virtual {v1, p1, v0, p2}, Le/i/b/c;->a(Ljava/lang/Object;ILjava/lang/Object;)V
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,74 @@
.class public 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 = 0x19
name = "AsmShortField"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p1, v1}, Le/i/b/c;->i(Ljava/lang/Object;I)S
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;IS)V
return-void
.end method
.method public read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readShort()S
move-result p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;IS)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->i(Ljava/lang/Object;I)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,74 @@
.class public 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 = 0x19
name = "AsmStringField"
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Lcom/esotericsoftware/kryo/serializers/AsmCacheFields$AsmCachedField;-><init>()V
return-void
.end method
# virtual methods
.method public copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p1, v1}, Le/i/b/c;->j(Ljava/lang/Object;I)Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;ILjava/lang/Object;)V
return-void
.end method
.method public read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {p1}, Lcom/esotericsoftware/kryo/io/Input;->readString()Ljava/lang/String;
move-result-object p1
invoke-virtual {v0, p2, v1, p1}, Le/i/b/c;->a(Ljava/lang/Object;ILjava/lang/Object;)V
return-void
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->access:Le/i/b/c;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->accessIndex:I
invoke-virtual {v0, p2, v1}, Le/i/b/c;->j(Ljava/lang/Object;I)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 public 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 public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method

View file

@ -0,0 +1,164 @@
.class public Lcom/esotericsoftware/kryo/serializers/AsmCachedFieldFactory;
.super Ljava/lang/Object;
.source "AsmCachedFieldFactory.java"
# interfaces
.implements Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldFactory;
# direct methods
.method public 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 public 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 = 0x1
name = null
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Object;",
"Ljava/util/Comparator<",
"Ljava/beans/PropertyDescriptor;",
">;"
}
.end annotation
# instance fields
.field public final synthetic this$0:Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
# direct methods
.method public 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,147 @@
.class public 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 = 0x1
name = "CachedProperty"
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"<X:",
"Ljava/lang/Object;",
">",
"Ljava/lang/Object;"
}
.end annotation
# instance fields
.field public getMethod:Ljava/lang/reflect/Method;
.field public getterAccessIndex:I
.field public name:Ljava/lang/String;
.field public serializer:Lcom/esotericsoftware/kryo/Serializer;
.field public setMethod:Ljava/lang/reflect/Method;
.field public setMethodType:Ljava/lang/Class;
.field public setterAccessIndex:I
.field public final synthetic this$0:Lcom/esotericsoftware/kryo/serializers/BeanSerializer;
# direct methods
.method public 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 public get(Ljava/lang/Object;)Ljava/lang/Object;
.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;
if-eqz v0, :cond_0
check-cast v0, Le/i/b/d;
iget v1, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->getterAccessIndex:I
const/4 v2, 0x0
new-array v2, v2, [Ljava/lang/Object;
invoke-virtual {v0, p1, v1, v2}, Le/i/b/d;->a(Ljava/lang/Object;I[Ljava/lang/Object;)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 public set(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 4
.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
check-cast v0, Le/i/b/d;
iget v3, p0, Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;->setterAccessIndex:I
new-array v2, v2, [Ljava/lang/Object;
aput-object p2, v2, v1
invoke-virtual {v0, p1, v3, v2}, Le/i/b/d;->a(Ljava/lang/Object;I[Ljava/lang/Object;)Ljava/lang/Object;
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,858 @@
.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 public static final noArgs:[Ljava/lang/Object;
# instance fields
.field public access:Ljava/lang/Object;
.field public properties:[Lcom/esotericsoftware/kryo/serializers/BeanSerializer$CachedProperty;
# direct methods
.method public 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_0
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_4
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-eqz v7, :cond_0
goto :goto_1
:cond_0
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_3
if-nez v5, :cond_1
goto :goto_1
: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_2
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_2
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_3
:goto_1
add-int/lit8 v4, v4, 0x1
goto :goto_0
:cond_4
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}, Le/i/b/d;->a(Ljava/lang/Class;)Le/i/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_2
if-ge v3, p1, :cond_5
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, Le/i/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}, Le/i/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, Le/i/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}, Le/i/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
.catchall {:try_start_1 .. :try_end_1} :catchall_0
add-int/lit8 v3, v3, 0x1
goto :goto_2
:catchall_0
:cond_5
return-void
:catch_0
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
throw p2
.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;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string v5, "Error copying bean property: "
invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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, Le/i/a/a;->d:Z
if-eqz v5, :cond_0
const-string v5, "kryo"
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
const-string v7, "Read property: "
invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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}, Le/i/a/a;->b(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;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Error invoking setter method: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Error accessing setter method: "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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, Le/i/a/a;->d:Z
if-eqz v6, :cond_0
const-string v6, "kryo"
new-instance v7, Ljava/lang/StringBuilder;
invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
const-string v8, "Write property: "
invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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}, Le/i/a/a;->b(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-static {v2, p1, v0, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)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-static {v2, p2, v0, p1}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p1
:catch_2
move-exception p1
new-instance p2, Lcom/esotericsoftware/kryo/KryoException;
new-instance p3, Ljava/lang/StringBuilder;
invoke-direct {p3}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Error invoking getter method: "
invoke-virtual {p3, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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;
invoke-direct {p3}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Error accessing getter method: "
invoke-virtual {p3, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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 public 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 = 0x1
name = null
.end annotation
# instance fields
.field public final synthetic this$0:Lcom/esotericsoftware/kryo/serializers/BlowfishSerializer;
# direct methods
.method public 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 public static keySpec:Ljavax/crypto/spec/SecretKeySpec;
# instance fields
.field public 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 public 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,237 @@
.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 public static readResolve:Ljava/lang/reflect/Method;
.field public static serializedLambda:Ljava/lang/Class;
# direct methods
.method public 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;
sget-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,62 @@
.class public interface abstract annotation Lcom/esotericsoftware/kryo/serializers/CollectionSerializer$BindCollection;
.super Ljava/lang/Object;
.source "CollectionSerializer.java"
# interfaces
.implements Ljava/lang/annotation/Annotation;
# annotations
.annotation system Ldalvik/annotation/AnnotationDefault;
value = .subannotation Lcom/esotericsoftware/kryo/serializers/CollectionSerializer$BindCollection;
elementClass = Ljava/lang/Object;
elementSerializer = Lcom/esotericsoftware/kryo/Serializer;
elementsCanBeNull = true
.end subannotation
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2609
name = "BindCollection"
.end annotation
.annotation runtime Ljava/lang/annotation/Retention;
value = .enum Ljava/lang/annotation/RetentionPolicy;->RUNTIME:Ljava/lang/annotation/RetentionPolicy;
.end annotation
.annotation runtime Ljava/lang/annotation/Target;
value = {
.enum Ljava/lang/annotation/ElementType;->FIELD:Ljava/lang/annotation/ElementType;
}
.end annotation
# virtual methods
.method public abstract elementClass()Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/lang/Class<",
"*>;"
}
.end annotation
.end method
.method public abstract elementSerializer()Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/lang/Class<",
"+",
"Lcom/esotericsoftware/kryo/Serializer;",
">;"
}
.end annotation
.end method
.method public abstract elementsCanBeNull()Z
.end method

View file

@ -0,0 +1,443 @@
.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 public elementClass:Ljava/lang/Class;
.field public elementsCanBeNull:Z
.field public genericType:Ljava/lang/Class;
.field public 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 public 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 public 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_3
iget-boolean v1, p0, Lcom/esotericsoftware/kryo/serializers/CollectionSerializer;->elementsCanBeNull:Z
if-eqz v1, :cond_2
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_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;->writeObjectOrNull(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;Lcom/esotericsoftware/kryo/Serializer;)V
goto :goto_0
:cond_2
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_3
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_4
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_4
return-void
.end method

View file

@ -0,0 +1,475 @@
.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 public 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/FieldSerializer;->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;
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, Le/i/a/a;->d:Z
if-eqz v8, :cond_0
new-instance v8, Ljava/lang/StringBuilder;
invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
const-string v9, "Read "
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
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}, Le/i/a/a;->b(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/FieldSerializer;->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/FieldSerializer;->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, Le/i/a/a;->d:Z
if-eqz v6, :cond_4
new-instance v6, Ljava/lang/StringBuilder;
invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v6, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v6, v13}, 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}, Le/i/a/a;->b(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/FieldSerializer;->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 v16, v16, -0x1
move/from16 v15, v16
goto :goto_7
:cond_7
if-lez v7, :cond_8
add-int/lit8 v16, v16, 0x1
move/from16 v14, v16
:goto_7
const/4 v7, 0x1
goto :goto_6
:cond_8
aget-object v7, v10, v16
aput-object v7, v9, v11
goto :goto_8
:cond_9
sget-boolean v7, Le/i/a/a;->d:Z
if-eqz v7, :cond_a
new-instance v7, Ljava/lang/StringBuilder;
invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {v7, v12}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v7, v13}, 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 {v5, v7}, Le/i/a/a;->b(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/FieldSerializer;->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/FieldSerializer;->getCachedFieldName(Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;)Ljava/lang/String;
move-result-object v8
invoke-virtual {v0, v8}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getField(Ljava/lang/String;)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v8
:cond_e
if-nez v8, :cond_10
sget-boolean v8, Le/i/a/a;->d:Z
if-eqz v8, :cond_f
const-string v8, "Skip obsolete field."
invoke-static {v5, v8}, Le/i/a/a;->b(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/FieldSerializer;->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, Le/i/a/a;->d:Z
if-eqz p1, :cond_0
const-string p1, "Write "
invoke-static {p1}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object p1
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}, Le/i/a/a;->b(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/FieldSerializer;->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/Serializer;->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/Serializer;->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/Serializer;->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/Serializer;->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/Serializer;->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/Serializer;->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/Serializer;->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,458 @@
.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 public elementsAreSameType:Z
.field public elementsCanBeNull:Z
.field public generics:[Ljava/lang/Class;
.field public 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/Serializer;->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;
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;
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, Le/i/a/a;->d:Z
if-eqz p1, :cond_0
const-string p1, "kryo"
const-string v0, "setting generics for ObjectArraySerializer"
invoke-static {p1, v0}, Le/i/a/a;->b(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_3
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_5
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
: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_5
iget-boolean v3, p0, Lcom/esotericsoftware/kryo/serializers/DefaultArraySerializers$ObjectArraySerializer;->elementsCanBeNull:Z
if-eqz v3, :cond_4
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_4
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_5
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/Serializer;->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,255 @@
.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/Serializer;->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_1
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_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
array-length v2, p3
:goto_0
if-ge v0, v2, :cond_2
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
array-length p1, p3
:goto_1
if-ge v0, p1, :cond_2
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_2
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 public 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/Serializer;->setAcceptsNull(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/Serializer;->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/Serializer;->setImmutable(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/Serializer;->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/Serializer;->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/Serializer;->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,240 @@
.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 public static final DEFAULT_GREGORIAN_CUTOVER:J = -0xb1d069b5400L
# instance fields
.field public 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
goto :goto_0
:cond_0
const-wide v1, -0xb1d069b5400L
invoke-virtual {p2, v1, v2, v0}, Lcom/esotericsoftware/kryo/io/Output;->writeLong(JZ)I
:goto_0
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/Serializer;->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/Serializer;->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/Serializer;->setImmutable(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/Serializer;->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
goto :goto_1
: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/Serializer;->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/Serializer;->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/Serializer;->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/Serializer;->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/Serializer;->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/Serializer;->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/Serializer;->setImmutable(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/Serializer;->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/Serializer;->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,204 @@
.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 public enumConstants:[Ljava/lang/Object;
# direct methods
.method public constructor <init>(Ljava/lang/Class;)V
.locals 3
.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/Serializer;->setImmutable(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/Serializer;->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;
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "The type must be an enum: "
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-direct {v0, p1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw v0
.end method
# 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;
const-string v0, "Invalid ordinal for enum \""
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
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/Serializer;->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/Serializer;->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,475 @@
.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 public 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/Serializer;->setImmutable(Z)V
return-void
.end method
.method public 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 v0, 0x1
:catch_0
:cond_0
return v0
.end method
# virtual methods
.method public 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
invoke-static {v1, 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/Serializer;->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/Serializer;->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/Serializer;->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/Serializer;->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/Serializer;->setImmutable(Z)V
invoke-virtual {p0, v0}, Lcom/esotericsoftware/kryo/Serializer;->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/Serializer;->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 public 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 public 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 public 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 public 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 public 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 public 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/Serializer;->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/Serializer;->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 public compressionLevel:I
.field public noHeaders:Z
.field public 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 public final enumType:Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/lang/Class<",
"+",
"Ljava/lang/Enum;",
">;"
}
.end annotation
.end field
.field public 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/Serializer;->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;
const-string v0, "Invalid name for enum \""
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
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 public 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 public objectInput:Lcom/esotericsoftware/kryo/io/KryoObjectInput;
.field public 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/KryoDataInput;->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/KryoDataOutput;->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 public 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 v0, 0x1
: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
goto :goto_1
:cond_1
:goto_0
const/4 p1, 0x1
:goto_1
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
goto :goto_0
: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
:goto_0
return-void
.end method

View file

@ -0,0 +1,41 @@
.class public interface abstract annotation Lcom/esotericsoftware/kryo/serializers/FieldSerializer$Bind;
.super Ljava/lang/Object;
.source "FieldSerializer.java"
# interfaces
.implements Ljava/lang/annotation/Annotation;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2609
name = "Bind"
.end annotation
.annotation runtime Ljava/lang/annotation/Retention;
value = .enum Ljava/lang/annotation/RetentionPolicy;->RUNTIME:Ljava/lang/annotation/RetentionPolicy;
.end annotation
.annotation runtime Ljava/lang/annotation/Target;
value = {
.enum Ljava/lang/annotation/ElementType;->FIELD:Ljava/lang/annotation/ElementType;
}
.end annotation
# virtual methods
.method public abstract value()Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/lang/Class<",
"+",
"Lcom/esotericsoftware/kryo/Serializer;",
">;"
}
.end annotation
.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 public access:Le/i/b/c;
.field public accessIndex:I
.field public canBeNull:Z
.field public field:Ljava/lang/reflect/Field;
.field public offset:J
.field public serializer:Lcom/esotericsoftware/kryo/Serializer;
.field public valueClass:Ljava/lang/Class;
.field public 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 public 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 = 0x9
name = null
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public 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 public 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 = 0x9
name = null
.end annotation
# direct methods
.method public constructor <init>()V
.locals 0
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
# virtual methods
.method public 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 public 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,32 @@
.class public interface abstract annotation Lcom/esotericsoftware/kryo/serializers/FieldSerializer$Optional;
.super Ljava/lang/Object;
.source "FieldSerializer.java"
# interfaces
.implements Ljava/lang/annotation/Annotation;
# annotations
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2609
name = "Optional"
.end annotation
.annotation runtime Ljava/lang/annotation/Retention;
value = .enum Ljava/lang/annotation/RetentionPolicy;->RUNTIME:Ljava/lang/annotation/RetentionPolicy;
.end annotation
.annotation runtime Ljava/lang/annotation/Target;
value = {
.enum Ljava/lang/annotation/ElementType;->FIELD:Ljava/lang/annotation/ElementType;
}
.end annotation
# virtual methods
.method public abstract value()Ljava/lang/String;
.end method

View file

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

View file

@ -0,0 +1,452 @@
.class public Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;
.super Ljava/lang/Object;
.source "FieldSerializerConfig.java"
# interfaces
.implements Ljava/lang/Cloneable;
# instance fields
.field public cachedFieldNameStrategy:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
.field public copyTransient:Z
.field public fieldsCanBeNull:Z
.field public fixedFieldTypes:Z
.field public ignoreSyntheticFields:Z
.field public optimizedGenerics:Z
.field public serializeTransient:Z
.field public setFieldsAsAccessible:Z
.field public 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, Le/i/a/a;->d:Z
if-eqz v0, :cond_0
const-string v0, "useAsm: "
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
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}, Le/i/a/a;->b(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
# virtual methods
.method public 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 public 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 2
iput-object p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->cachedFieldNameStrategy:Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldNameStrategy;
sget-boolean v0, Le/i/a/a;->d:Z
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "CachedFieldNameStrategy: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, 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, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Le/i/a/a;->b(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 2
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->setFieldsAsAccessible:Z
sget-boolean v0, Le/i/a/a;->d:Z
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "setFieldsAsAccessible: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Le/i/a/a;->b(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
.method public setFieldsCanBeNull(Z)V
.locals 2
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->fieldsCanBeNull:Z
sget-boolean v0, Le/i/a/a;->d:Z
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "setFieldsCanBeNull: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Le/i/a/a;->b(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
.method public setFixedFieldTypes(Z)V
.locals 2
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->fixedFieldTypes:Z
sget-boolean v0, Le/i/a/a;->d:Z
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "setFixedFieldTypes: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Le/i/a/a;->b(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
.method public setIgnoreSyntheticFields(Z)V
.locals 2
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->ignoreSyntheticFields:Z
sget-boolean v0, Le/i/a/a;->d:Z
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "setIgnoreSyntheticFields: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Le/i/a/a;->b(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
return-void
.end method
.method public setOptimizedGenerics(Z)V
.locals 2
iput-boolean p1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerConfig;->optimizedGenerics:Z
sget-boolean v0, Le/i/a/a;->d:Z
if-eqz v0, :cond_0
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "setOptimizedGenerics: "
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string v0, "kryo.FieldSerializerConfig"
invoke-static {v0, p1}, Le/i/a/a;->b(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 3
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, Le/i/a/a;->d:Z
if-eqz v0, :cond_0
const-string v0, "sun.misc.Unsafe is unavailable, using ASM."
invoke-static {v1, v0}, Le/i/a/a;->b(Ljava/lang/String;Ljava/lang/String;)V
:cond_0
sget-boolean v0, Le/i/a/a;->d:Z
if-eqz v0, :cond_1
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, "setUseAsm: "
invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
invoke-static {v1, p1}, Le/i/a/a;->b(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 public 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 public 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
.catchall {:try_start_0 .. :try_end_0} :catchall_0
:catchall_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 public 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 public 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,547 @@
.class public final Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;
.super Ljava/lang/Object;
.source "FieldSerializerUnsafeUtilImpl.java"
# interfaces
.implements Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtil;
# instance fields
.field public 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 createUnsafeCacheFieldsAndRegions(Ljava/util/List;Ljava/util/List;ILcom/esotericsoftware/kryo/util/IntArray;)V
.locals 26
.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 v3, 0x0
const/4 v5, 0x0
const-wide/16 v6, -0x1
const/4 v8, 0x0
const/4 v9, 0x0
const/4 v10, 0x0
const/4 v11, -0x1
:goto_0
const-string v12, " endOffset="
const-string v13, " Start offset = "
const-string v14, ". Byte length = "
const-string v15, ". Found a set of consecutive primitive fields. Number of fields = "
const-string v16, "Class "
move/from16 v17, v11
const-string v11, "kryo"
if-ge v8, v2, :cond_8
move/from16 v18, v2
move-object/from16 v2, p1
invoke-interface {v2, v8}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object v19
move-object/from16 v2, v19
check-cast v2, Ljava/lang/reflect/Field;
iget-object v1, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
iget-object v1, v1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->access:Ljava/lang/Object;
if-eqz v1, :cond_0
add-int v1, p3, v8
move/from16 v19, v8
move-object/from16 v8, p4
invoke-virtual {v8, v1}, Lcom/esotericsoftware/kryo/util/IntArray;->get(I)I
move-result v1
const/4 v8, 0x1
if-ne v1, v8, :cond_1
iget-object v1, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
iget-object v1, v1, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->access:Ljava/lang/Object;
check-cast v1, Le/i/b/c;
invoke-virtual {v2}, Ljava/lang/reflect/Field;->getName()Ljava/lang/String;
move-result-object v8
invoke-virtual {v1, v8}, Le/i/b/c;->a(Ljava/lang/String;)I
move-result v1
goto :goto_1
:cond_0
move/from16 v19, v8
:cond_1
const/4 v1, -0x1
:goto_1
invoke-static {}, Lcom/esotericsoftware/kryo/util/UnsafeUtil;->unsafe()Lsun/misc/Unsafe;
move-result-object v8
invoke-virtual {v8, 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 v8
invoke-direct {v0, v8}, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->fieldSizeOf(Ljava/lang/Class;)I
move-result v8
move-object/from16 v23, v11
move-object/from16 v22, v12
int-to-long v11, v8
add-long v11, v20, v11
invoke-virtual {v2}, Ljava/lang/reflect/Field;->getType()Ljava/lang/Class;
move-result-object v8
invoke-virtual {v8}, Ljava/lang/Class;->isPrimitive()Z
move-result v8
if-nez v8, :cond_5
if-eqz v9, :cond_5
const/4 v8, 0x1
if-le v10, v8, :cond_3
sget-boolean v8, Le/i/a/a;->d:Z
if-eqz v8, :cond_2
invoke-static/range {v16 .. v16}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v8
iget-object v9, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-virtual {v9}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getType()Ljava/lang/Class;
move-result-object v9
invoke-virtual {v9}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v9
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v8, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
sub-long v14, v6, v3
invoke-virtual {v8, v14, v15}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v8, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
move-object/from16 v9, v22
invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v8, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v8
move-object/from16 v9, v23
invoke-static {v9, v8}, Le/i/a/a;->b(Ljava/lang/String;Ljava/lang/String;)V
:cond_2
new-instance v8, Lcom/esotericsoftware/kryo/serializers/UnsafeCacheFields$UnsafeRegionField;
sub-long/2addr v6, v3
invoke-direct {v8, v3, v4, v6, v7}, Lcom/esotericsoftware/kryo/serializers/UnsafeCacheFields$UnsafeRegionField;-><init>(JJ)V
iput-object v5, v8, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
move-object/from16 v6, p2
invoke-interface {v6, v8}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_2
:cond_3
move-object/from16 v6, p2
if-eqz v5, :cond_4
iget-object v7, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-interface/range {p2 .. p2}, Ljava/util/List;->size()I
move-result v8
move/from16 v9, v17
invoke-virtual {v7, v5, v8, v9}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->newCachedField(Ljava/lang/reflect/Field;II)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v5
invoke-interface {v6, v5}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:cond_4
:goto_2
iget-object v5, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-interface/range {p2 .. p2}, Ljava/util/List;->size()I
move-result v7
invoke-virtual {v5, v2, v7, v1}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->newCachedField(Ljava/lang/reflect/Field;II)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v5
invoke-interface {v6, v5}, Ljava/util/List;->add(Ljava/lang/Object;)Z
const/4 v5, 0x0
const/4 v9, 0x0
goto :goto_3
:cond_5
move-object/from16 v6, p2
invoke-virtual {v2}, Ljava/lang/reflect/Field;->getType()Ljava/lang/Class;
move-result-object v5
invoke-virtual {v5}, Ljava/lang/Class;->isPrimitive()Z
move-result v5
if-nez v5, :cond_6
iget-object v5, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-interface/range {p2 .. p2}, Ljava/util/List;->size()I
move-result v7
invoke-virtual {v5, v2, v7, v1}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->newCachedField(Ljava/lang/reflect/Field;II)Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;
move-result-object v5
invoke-interface {v6, v5}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_3
:cond_6
if-nez v9, :cond_7
const/4 v3, 0x1
const/4 v4, 0x1
move-wide/from16 v3, v20
const/4 v9, 0x1
const/4 v10, 0x1
goto :goto_3
:cond_7
add-int/lit8 v10, v10, 0x1
:goto_3
add-int/lit8 v8, v19, 0x1
move-object v5, v2
move/from16 v2, v18
move-wide/from16 v24, v11
move v11, v1
move-object v1, v6
move-wide/from16 v6, v24
goto/16 :goto_0
:cond_8
move-object v8, v11
move-object v2, v12
move/from16 v11, v17
iget-object v12, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-virtual {v12}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getUseAsmEnabled()Z
move-result v12
if-nez v12, :cond_b
iget-object v12, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-virtual {v12}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getUseMemRegions()Z
move-result v12
if-eqz v12, :cond_b
if-eqz v9, :cond_b
const/4 v9, 0x1
if-le v10, v9, :cond_a
sget-boolean v9, Le/i/a/a;->d:Z
if-eqz v9, :cond_9
invoke-static/range {v16 .. v16}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v9
iget-object v11, v0, Lcom/esotericsoftware/kryo/serializers/FieldSerializerUnsafeUtilImpl;->serializer:Lcom/esotericsoftware/kryo/serializers/FieldSerializer;
invoke-virtual {v11}, Lcom/esotericsoftware/kryo/serializers/FieldSerializer;->getType()Ljava/lang/Class;
move-result-object v11
invoke-virtual {v11}, Ljava/lang/Class;->getName()Ljava/lang/String;
move-result-object v11
invoke-virtual {v9, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v9, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
invoke-virtual {v9, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
sub-long v10, v6, v3
invoke-virtual {v9, v10, v11}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v9, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v9, v3, v4}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v9, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v9, v6, v7}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v2
invoke-static {v8, v2}, Le/i/a/a;->b(Ljava/lang/String;Ljava/lang/String;)V
:cond_9
new-instance v2, Lcom/esotericsoftware/kryo/serializers/UnsafeCacheFields$UnsafeRegionField;
sub-long/2addr v6, v3
invoke-direct {v2, v3, v4, v6, v7}, Lcom/esotericsoftware/kryo/serializers/UnsafeCacheFields$UnsafeRegionField;-><init>(JJ)V
iput-object v5, v2, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
invoke-interface {v1, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
goto :goto_4
:cond_a
if-eqz v5, :cond_b
iget-object v2, 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 {v2, v5, v3, v11}, 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
:goto_4
return-void
.end method
.method public 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 public final Lcom/esotericsoftware/kryo/serializers/Generics;
.super Ljava/lang/Object;
.source "Generics.java"
# instance fields
.field public 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 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 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 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 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,134 @@
.class public final Lcom/esotericsoftware/kryo/serializers/GenericsResolver;
.super Ljava/lang/Object;
.source "GenericsResolver.java"
# instance fields
.field public 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 public 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 public 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
xor-int/lit8 v0, v0, 0x1
return v0
.end method
.method public 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 public pushScope(Ljava/lang/Class;Lcom/esotericsoftware/kryo/serializers/Generics;)V
.locals 1
sget-boolean v0, Le/i/a/a;->d:Z
if-eqz v0, :cond_0
const-string v0, "Settting a new generics scope for class "
invoke-static {v0}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v0
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}, Le/i/a/a;->b(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 public 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 = 0x9
name = "ObjectInputStreamWithKryoClassLoader"
.end annotation
# instance fields
.field public final loader:Ljava/lang/ClassLoader;
# direct methods
.method public 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 public resolveClass(Ljava/io/ObjectStreamClass;)Ljava/lang/Class;
.locals 3
.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;
const-string v2, "Class not found: "
invoke-static {v2}, Le/e/b/a/a;->a(Ljava/lang/String;)Ljava/lang/StringBuilder;
move-result-object v2
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,90 @@
.class public interface abstract annotation Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;
.super Ljava/lang/Object;
.source "MapSerializer.java"
# interfaces
.implements Ljava/lang/annotation/Annotation;
# annotations
.annotation system Ldalvik/annotation/AnnotationDefault;
value = .subannotation Lcom/esotericsoftware/kryo/serializers/MapSerializer$BindMap;
keyClass = Ljava/lang/Object;
keySerializer = Lcom/esotericsoftware/kryo/Serializer;
keysCanBeNull = true
valueClass = Ljava/lang/Object;
valueSerializer = Lcom/esotericsoftware/kryo/Serializer;
valuesCanBeNull = true
.end subannotation
.end annotation
.annotation system Ldalvik/annotation/EnclosingClass;
value = Lcom/esotericsoftware/kryo/serializers/MapSerializer;
.end annotation
.annotation system Ldalvik/annotation/InnerClass;
accessFlags = 0x2609
name = "BindMap"
.end annotation
.annotation runtime Ljava/lang/annotation/Retention;
value = .enum Ljava/lang/annotation/RetentionPolicy;->RUNTIME:Ljava/lang/annotation/RetentionPolicy;
.end annotation
.annotation runtime Ljava/lang/annotation/Target;
value = {
.enum Ljava/lang/annotation/ElementType;->FIELD:Ljava/lang/annotation/ElementType;
}
.end annotation
# virtual methods
.method public abstract keyClass()Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/lang/Class<",
"*>;"
}
.end annotation
.end method
.method public abstract keySerializer()Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/lang/Class<",
"+",
"Lcom/esotericsoftware/kryo/Serializer;",
">;"
}
.end annotation
.end method
.method public abstract keysCanBeNull()Z
.end method
.method public abstract valueClass()Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/lang/Class<",
"*>;"
}
.end annotation
.end method
.method public abstract valueSerializer()Ljava/lang/Class;
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/lang/Class<",
"+",
"Lcom/esotericsoftware/kryo/Serializer;",
">;"
}
.end annotation
.end method
.method public abstract valuesCanBeNull()Z
.end method

View file

@ -0,0 +1,544 @@
.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 public keyClass:Ljava/lang/Class;
.field public keyGenericType:Ljava/lang/Class;
.field public keySerializer:Lcom/esotericsoftware/kryo/Serializer;
.field public keysCanBeNull:Z
.field public valueClass:Ljava/lang/Class;
.field public valueGenericType:Ljava/lang/Class;
.field public valueSerializer:Lcom/esotericsoftware/kryo/Serializer;
.field public 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 public 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 public 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 v1
move-object v3, v1
: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 v2
move-object v4, v2
: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 public Lcom/esotericsoftware/kryo/serializers/ObjectCachedFieldFactory;
.super Ljava/lang/Object;
.source "ObjectCachedFieldFactory.java"
# interfaces
.implements Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedFieldFactory;
# direct methods
.method public 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,176 @@
.class public 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 = 0x19
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 copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)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/FieldSerializer$CachedField;->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 read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method

View file

@ -0,0 +1,176 @@
.class public 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 = 0x19
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 copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)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/FieldSerializer$CachedField;->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 read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method

View file

@ -0,0 +1,176 @@
.class public 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 = 0x19
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 copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)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/FieldSerializer$CachedField;->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 read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method

View file

@ -0,0 +1,176 @@
.class public 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 = 0x19
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 copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 3
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method
.method public 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/FieldSerializer$CachedField;->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 read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 3
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method

View file

@ -0,0 +1,176 @@
.class public 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 = 0x19
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 copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)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/FieldSerializer$CachedField;->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 read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method

View file

@ -0,0 +1,212 @@
.class public 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 = 0x19
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 copy(Ljava/lang/Object;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->field:Ljava/lang/reflect/Field;
iget-object v1, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)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/FieldSerializer$CachedField;->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 read(Lcom/esotericsoftware/kryo/io/Input;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->varIntsEnabled:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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
goto :goto_0
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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
:goto_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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method
.method public write(Lcom/esotericsoftware/kryo/io/Output;Ljava/lang/Object;)V
.locals 2
:try_start_0
iget-boolean v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->varIntsEnabled:Z
if-eqz v0, :cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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
goto :goto_0
:cond_0
iget-object v0, p0, Lcom/esotericsoftware/kryo/serializers/FieldSerializer$CachedField;->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
:goto_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;->type:Ljava/lang/Class;
const-string v1, ")"
invoke-static {v0, p1, v1, p2}, Le/e/b/a/a;->a(Ljava/lang/Class;Ljava/lang/StringBuilder;Ljava/lang/String;Lcom/esotericsoftware/kryo/KryoException;)V
throw p2
.end method

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