| class SomeData(val number: Int, val text: String, val flag: Boolean) : Parcelable { |
| constructor(parcel: Parcel) : this( |
| parcel.readInt(), |
| parcel.readString(), |
| parcel.readByte() != 0.toByte()) { |
| } |
| |
| override fun writeToParcel(parcel: Parcel, flags: Int) { |
| parcel.writeInt(number) |
| parcel.writeString(text) |
| parcel.writeByte(if (flag) 1 else 0) |
| } |
| |
| override fun describeContents(): Int { |
| return 0 |
| } |
| |
| companion object CREATOR : Parcelable.Creator<SomeData> { |
| override fun createFromParcel(parcel: Parcel): SomeData { |
| return SomeData(parcel) |
| } |
| |
| override fun newArray(size: Int): Array<SomeData?> { |
| return arrayOfNulls(size) |
| } |
| } |
| } |