mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-11 08:31:30 +00:00
18 lines
473 B
Kotlin
Vendored
18 lines
473 B
Kotlin
Vendored
package test
|
|
|
|
import android.os.Parcel
|
|
|
|
fun parcelTest(block: (Parcel) -> Unit): String {
|
|
val parcel = Parcel.obtain()
|
|
try {
|
|
block(parcel)
|
|
return "OK"
|
|
} finally {
|
|
parcel.recycle()
|
|
}
|
|
}
|
|
|
|
inline fun <reified T> readFromParcel(parcel: Parcel): T {
|
|
val creator = T::class.java.getDeclaredField("CREATOR").get(null)
|
|
return creator::class.java.getDeclaredMethod("createFromParcel", Parcel::class.java).invoke(creator, parcel) as T
|
|
} |