Parcelize: Fix IBinderIInterface test
This commit is contained in:
committed by
Alexander Udalov
parent
518c7a32b8
commit
9fc210224d
+89
@@ -0,0 +1,89 @@
|
|||||||
|
public final class User$Creator : java/lang/Object, android/os/Parcelable$Creator {
|
||||||
|
public void <init>()
|
||||||
|
|
||||||
|
public final User createFromParcel(android.os.Parcel parcel) {
|
||||||
|
LABEL (L0)
|
||||||
|
ALOAD (1)
|
||||||
|
LDC (parcel)
|
||||||
|
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||||
|
NEW
|
||||||
|
DUP
|
||||||
|
ALOAD (1)
|
||||||
|
INVOKEVIRTUAL (android/os/Parcel, readStrongBinder, ()Landroid/os/IBinder;)
|
||||||
|
ALOAD (1)
|
||||||
|
INVOKEVIRTUAL (android/os/Parcel, createBinderArray, ()[Landroid/os/IBinder;)
|
||||||
|
ALOAD (1)
|
||||||
|
INVOKEVIRTUAL (android/os/Parcel, createBinderArrayList, ()Ljava/util/ArrayList;)
|
||||||
|
CHECKCAST
|
||||||
|
ALOAD (1)
|
||||||
|
INVOKEVIRTUAL (android/os/Parcel, createBinderArrayList, ()Ljava/util/ArrayList;)
|
||||||
|
INVOKESPECIAL (User, <init>, (Landroid/os/IBinder;[Landroid/os/IBinder;Ljava/util/List;Ljava/util/ArrayList;)V)
|
||||||
|
ARETURN
|
||||||
|
LABEL (L1)
|
||||||
|
}
|
||||||
|
|
||||||
|
public java.lang.Object createFromParcel(android.os.Parcel source) {
|
||||||
|
LABEL (L0)
|
||||||
|
ALOAD (0)
|
||||||
|
ALOAD (1)
|
||||||
|
INVOKEVIRTUAL (User$Creator, createFromParcel, (Landroid/os/Parcel;)LUser;)
|
||||||
|
ARETURN
|
||||||
|
LABEL (L1)
|
||||||
|
}
|
||||||
|
|
||||||
|
public final User[] newArray(int size)
|
||||||
|
|
||||||
|
public java.lang.Object[] newArray(int size)
|
||||||
|
}
|
||||||
|
|
||||||
|
public final class User : java/lang/Object, android/os/Parcelable {
|
||||||
|
public final static android.os.Parcelable$Creator CREATOR
|
||||||
|
|
||||||
|
private final android.os.IBinder binder
|
||||||
|
|
||||||
|
private final android.os.IBinder[] binderArray
|
||||||
|
|
||||||
|
private final java.util.ArrayList binderArrayList
|
||||||
|
|
||||||
|
private final java.util.List binderList
|
||||||
|
|
||||||
|
static void <clinit>()
|
||||||
|
|
||||||
|
public void <init>(android.os.IBinder binder, android.os.IBinder[] binderArray, java.util.List binderList, java.util.ArrayList binderArrayList)
|
||||||
|
|
||||||
|
public int describeContents()
|
||||||
|
|
||||||
|
public final android.os.IBinder getBinder()
|
||||||
|
|
||||||
|
public final android.os.IBinder[] getBinderArray()
|
||||||
|
|
||||||
|
public final java.util.ArrayList getBinderArrayList()
|
||||||
|
|
||||||
|
public final java.util.List getBinderList()
|
||||||
|
|
||||||
|
public void writeToParcel(android.os.Parcel out, int flags) {
|
||||||
|
LABEL (L0)
|
||||||
|
ALOAD (1)
|
||||||
|
LDC (out)
|
||||||
|
INVOKESTATIC (kotlin/jvm/internal/Intrinsics, checkNotNullParameter, (Ljava/lang/Object;Ljava/lang/String;)V)
|
||||||
|
ALOAD (1)
|
||||||
|
ALOAD (0)
|
||||||
|
GETFIELD (binder, Landroid/os/IBinder;)
|
||||||
|
INVOKEVIRTUAL (android/os/Parcel, writeStrongBinder, (Landroid/os/IBinder;)V)
|
||||||
|
ALOAD (1)
|
||||||
|
ALOAD (0)
|
||||||
|
GETFIELD (binderArray, [Landroid/os/IBinder;)
|
||||||
|
INVOKEVIRTUAL (android/os/Parcel, writeBinderArray, ([Landroid/os/IBinder;)V)
|
||||||
|
ALOAD (1)
|
||||||
|
ALOAD (0)
|
||||||
|
GETFIELD (binderList, Ljava/util/List;)
|
||||||
|
INVOKEVIRTUAL (android/os/Parcel, writeBinderList, (Ljava/util/List;)V)
|
||||||
|
ALOAD (1)
|
||||||
|
ALOAD (0)
|
||||||
|
GETFIELD (binderArrayList, Ljava/util/ArrayList;)
|
||||||
|
CHECKCAST
|
||||||
|
INVOKEVIRTUAL (android/os/Parcel, writeBinderList, (Ljava/util/List;)V)
|
||||||
|
RETURN
|
||||||
|
LABEL (L1)
|
||||||
|
}
|
||||||
|
}
|
||||||
Vendored
+3
-3
@@ -1,4 +1,3 @@
|
|||||||
// IGNORE_BACKEND: JVM_IR
|
|
||||||
// CURIOUS_ABOUT writeToParcel, createFromParcel
|
// CURIOUS_ABOUT writeToParcel, createFromParcel
|
||||||
// WITH_RUNTIME
|
// WITH_RUNTIME
|
||||||
|
|
||||||
@@ -12,6 +11,7 @@ class User(
|
|||||||
val binder: IBinder,
|
val binder: IBinder,
|
||||||
val binderArray: Array<IBinder>,
|
val binderArray: Array<IBinder>,
|
||||||
val binderList: List<IBinder>,
|
val binderList: List<IBinder>,
|
||||||
val binderArrayList: ArrayList<IBinder>, // should be serialized using our strategy, not using Parcel.writeBinderList()
|
val binderArrayList: ArrayList<IBinder> // should be serialized using our strategy, not using Parcel.writeBinderList()
|
||||||
val intf: IInterface?
|
// There is no readStrongInterface method in Parcel.
|
||||||
|
// val intf: IInterface?
|
||||||
) : Parcelable
|
) : Parcelable
|
||||||
plugins/android-extensions/android-extensions-compiler/testData/parcel/codegen/IBinderIInterface.txt
Vendored
+2
-12
@@ -39,9 +39,7 @@ public final class User$Creator : java/lang/Object, android/os/Parcelable$Creato
|
|||||||
LABEL (L3)
|
LABEL (L3)
|
||||||
SWAP
|
SWAP
|
||||||
POP
|
POP
|
||||||
ALOAD (1)
|
INVOKESPECIAL (User, <init>, (Landroid/os/IBinder;[Landroid/os/IBinder;Ljava/util/List;Ljava/util/ArrayList;)V)
|
||||||
INVOKEVIRTUAL (android/os/Parcel, readStrongInterface, ()Landroid/os/IInterface;)
|
|
||||||
INVOKESPECIAL (User, <init>, (Landroid/os/IBinder;[Landroid/os/IBinder;Ljava/util/List;Ljava/util/ArrayList;Landroid/os/IInterface;)V)
|
|
||||||
ARETURN
|
ARETURN
|
||||||
LABEL (L4)
|
LABEL (L4)
|
||||||
}
|
}
|
||||||
@@ -60,11 +58,9 @@ public final class User : java/lang/Object, android/os/Parcelable {
|
|||||||
|
|
||||||
private final java.util.List binderList
|
private final java.util.List binderList
|
||||||
|
|
||||||
private final android.os.IInterface intf
|
|
||||||
|
|
||||||
static void <clinit>()
|
static void <clinit>()
|
||||||
|
|
||||||
public void <init>(android.os.IBinder binder, android.os.IBinder[] binderArray, java.util.List binderList, java.util.ArrayList binderArrayList, android.os.IInterface intf)
|
public void <init>(android.os.IBinder binder, android.os.IBinder[] binderArray, java.util.List binderList, java.util.ArrayList binderArrayList)
|
||||||
|
|
||||||
public int describeContents()
|
public int describeContents()
|
||||||
|
|
||||||
@@ -76,8 +72,6 @@ public final class User : java/lang/Object, android/os/Parcelable {
|
|||||||
|
|
||||||
public final java.util.List getBinderList()
|
public final java.util.List getBinderList()
|
||||||
|
|
||||||
public final android.os.IInterface getIntf()
|
|
||||||
|
|
||||||
public void writeToParcel(android.os.Parcel parcel, int flags) {
|
public void writeToParcel(android.os.Parcel parcel, int flags) {
|
||||||
LABEL (L0)
|
LABEL (L0)
|
||||||
ALOAD (1)
|
ALOAD (1)
|
||||||
@@ -115,10 +109,6 @@ public final class User : java/lang/Object, android/os/Parcelable {
|
|||||||
GOTO (L1)
|
GOTO (L1)
|
||||||
LABEL (L2)
|
LABEL (L2)
|
||||||
POP
|
POP
|
||||||
ALOAD (1)
|
|
||||||
ALOAD (0)
|
|
||||||
GETFIELD (intf, Landroid/os/IInterface;)
|
|
||||||
INVOKEVIRTUAL (android/os/Parcel, writeStrongInterface, (Landroid/os/IInterface;)V)
|
|
||||||
RETURN
|
RETURN
|
||||||
LABEL (L3)
|
LABEL (L3)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user