Parcelable: Add CREATOR field (and other generated declarations) in light classes (KT-19300, KT-19853)

This commit is contained in:
Yan Zhulanow
2017-12-16 01:45:54 +09:00
parent 90dff281ba
commit 145ddf3b1f
29 changed files with 129 additions and 66 deletions
@@ -50,7 +50,7 @@ public final class User$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class User : java/lang/Object, android/os/Parcelable {
public final static User$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final android.os.IBinder binder
@@ -7,7 +7,7 @@ public final class User$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class User : java/lang/Object, android/os/Parcelable {
public final static User$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final int age
@@ -22,7 +22,7 @@ public final class test/Foo$Creator : java/lang/Object, android/os/Parcelable$Cr
}
public final class test/Foo : java/lang/Object, android/os/Parcelable {
public final static test.Foo$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final android.accounts.Account kp
@@ -30,7 +30,7 @@ public final class test/Foo : java/lang/Object, android/os/Parcelable {
NEW
DUP
INVOKESPECIAL (test/Foo$Creator, <init>, ()V)
PUTSTATIC (CREATOR, Ltest/Foo$Creator;)
PUTSTATIC (CREATOR, Landroid/os/Parcelable$Creator;)
RETURN
}
@@ -112,7 +112,7 @@ public final class test/Foo$Creator : java/lang/Object, android/os/Parcelable$Cr
NEW
DUP
ALOAD (1)
GETSTATIC (CREATOR, Lk/KotlinParcelable$Creator;)
GETSTATIC (CREATOR, Landroid/os/Parcelable$Creator;)
SWAP
INVOKEINTERFACE (android/os/Parcelable$Creator, createFromParcel, (Landroid/os/Parcel;)Ljava/lang/Object;)
CHECKCAST
@@ -125,7 +125,7 @@ public final class test/Foo$Creator : java/lang/Object, android/os/Parcelable$Cr
}
public final class test/Foo : java/lang/Object, android/os/Parcelable {
public final static test.Foo$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final k.KotlinParcelable kp
@@ -133,7 +133,7 @@ public final class test/Foo : java/lang/Object, android/os/Parcelable {
NEW
DUP
INVOKESPECIAL (test/Foo$Creator, <init>, ()V)
PUTSTATIC (CREATOR, Ltest/Foo$Creator;)
PUTSTATIC (CREATOR, Landroid/os/Parcelable$Creator;)
RETURN
}
@@ -58,7 +58,7 @@ public final class User$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class User : java/lang/Object, android/os/Parcelable {
public final static User$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
public final static User$Companion Companion
@@ -47,7 +47,7 @@ public final class User$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class User : java/lang/Object, android/os/Parcelable {
public final static User$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
public final static User$Companion Companion
@@ -19,7 +19,7 @@ public final class User$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class User : AbstractUser {
public final static User$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final int age
@@ -19,7 +19,7 @@ public final class User$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class User : java/lang/Object, android/os/Parcelable {
public final static User$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
public final static User$Companion Companion
@@ -42,7 +42,7 @@ public final class User : java/lang/Object, android/os/Parcelable {
NEW
DUP
INVOKESPECIAL (User$Creator, <init>, ()V)
PUTSTATIC (CREATOR, LUser$Creator;)
PUTSTATIC (CREATOR, Landroid/os/Parcelable$Creator;)
RETURN
}
@@ -7,7 +7,7 @@ public final class Test$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class Test : java/lang/Object {
public final static Test$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final java.util.List names
@@ -7,7 +7,7 @@ public final class TestNotNull$Creator : java/lang/Object, android/os/Parcelable
}
public final class TestNotNull : java/lang/Object {
public final static TestNotNull$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final android.util.Size a
@@ -42,7 +42,7 @@ public final class TestNullable$Creator : java/lang/Object, android/os/Parcelabl
}
public final class TestNullable : java/lang/Object {
public final static TestNullable$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final android.util.Size a
@@ -1,6 +1,25 @@
// CURIOUS_ABOUT writeToParcel, createFromParcel, <clinit>
// WITH_RUNTIME
//FILE: test/JavaClass.java
package test;
class JavaClass {
void test() {
// Here we test access to CREATOR
Object o = Foo.CREATOR;
}
}
//FILE: android/os/Parcelable.java
package android.os;
public interface Parcelable {
public static interface Creator<T> {}
}
//FILE: test.kt
package test
import kotlinx.android.parcel.*
@@ -21,7 +21,7 @@ public final class test/Foo$Creator : java/lang/Object, android/os/Parcelable$Cr
}
public final class test/Foo : java/lang/Object, android/os/Parcelable {
public final static test.Foo$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final android.os.Parcelable parcelable
@@ -29,7 +29,7 @@ public final class test/Foo : java/lang/Object, android/os/Parcelable {
NEW
DUP
INVOKESPECIAL (test/Foo$Creator, <init>, ()V)
PUTSTATIC (CREATOR, Ltest/Foo$Creator;)
PUTSTATIC (CREATOR, Landroid/os/Parcelable$Creator;)
RETURN
}
@@ -35,7 +35,7 @@ public final class User$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class User : java/lang/Object, android/os/Parcelable {
public final static User$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final SerializableSimple notNull
@@ -45,7 +45,7 @@ public final class User : java/lang/Object, android/os/Parcelable {
NEW
DUP
INVOKESPECIAL (User$Creator, <init>, ()V)
PUTSTATIC (CREATOR, LUser$Creator;)
PUTSTATIC (CREATOR, Landroid/os/Parcelable$Creator;)
RETURN
}
@@ -36,7 +36,7 @@ public final class User$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class User : java/lang/Object, android/os/Parcelable {
public final static User$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final int age
@@ -50,7 +50,7 @@ public final class User : java/lang/Object, android/os/Parcelable {
NEW
DUP
INVOKESPECIAL (User$Creator, <init>, ()V)
PUTSTATIC (CREATOR, LUser$Creator;)
PUTSTATIC (CREATOR, Landroid/os/Parcelable$Creator;)
RETURN
}
@@ -7,7 +7,7 @@ public final class Test$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class Test : java/lang/Object {
public final static Test$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final java.util.List names
@@ -29,7 +29,7 @@ public final class Test$Creator : java/lang/Object, android/os/Parcelable$Creato
}
public final class Test : java/lang/Object, android/os/Parcelable {
public final static Test$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final android.util.Size nullable
@@ -119,7 +119,7 @@ public final class TestF$Creator : java/lang/Object, android/os/Parcelable$Creat
}
public final class TestF : java/lang/Object, android/os/Parcelable {
public final static TestF$Creator CREATOR
public final static android.os.Parcelable$Creator CREATOR
private final android.util.SizeF nullable