@Parcelize аннотации toghether с наследованием

Я не могу создать общую структуру togother с @parcelize аннотацией. Я хочу, чтобы конструктор использовался как конструктор для Jason, Room и Parcelable.

Допустим, у нас есть класс

@Parcelize class Food(var taste: String = "") 

Теперь два решения, которые мне приходят в голову

1. Соображается, что вкус должен быть var или val, чтобы иметь пригодный для использования конструктор Parceable

 @Parcelize class FastFood(var callory:String = "", taste: String): Food(taste) // error 

2. Соображается, что я должен явно овуверлировать вкус – так какие выгоды от полиморфизма?

 @Parcelize class FastFood(var callory: String = "", var taste: String): Food(taste) // error 

Как я могу эффективно использовать наследование вместе с вашей библиотекой?

В Kotlin, если вы добавляете значение в конструктор 'val' или 'var', он становится свойством класса. Чтобы использовать Parceable, вам нужно добавить его, потому что без него Parcelable.Creator не может получить к нему доступ. Затем вам нужно добавить «открытый» модификатор к классу Food и вкусу собственности, потому что в Kotlin все окончательные по умолчанию, так что вы сможете переопределить ценность вкуса.

 @Parcelize open class Food(open val taste: String) @Parcelize class FastFood(var callory:String = "", override val taste: String): Food(taste) 
Давайте будем гением компьютера.