Parcelable: Do not check property types if the Parcelable class has a custom Parceler implementation (KT-20062)

This commit is contained in:
Yan Zhulanow
2017-09-02 00:51:03 +03:00
committed by Yan Zhulanow
parent 89c5f78a8e
commit 033386b47d
18 changed files with 56 additions and 11 deletions
@@ -0,0 +1,20 @@
package test
import kotlinx.android.parcel.*
import android.os.*
class Box(val value: String)
@Parcelize
class Foo(val box: Box): Parcelable {
companion object : Parceler<Foo> {
override fun create(parcel: Parcel) = Foo(Box(parcel.readString()))
override fun Foo.write(parcel: Parcel, flags: Int) {
parcel.writeString(box.value)
}
}
}
@Parcelize
class Foo2(val box: <error descr="[PLUGIN_ERROR] PARCELABLE_TYPE_NOT_SUPPORTED: Type is not directly supported by 'Parcelize'. Annotate the parameter type with '@RawValue' if you want it to be serialized using 'writeValue()'">Box</error>): Parcelable