Я хочу создать класс данных, который может принимать как список, так и изменяемый список, и если список является экземпляром MutableList, тогда напрямую сделайте его свойством else, если это список, затем преобразуйте его в MutableList и затем сохраните его.
data class SidebarCategory(val title: String, val groups: MutableList<SidebarGroup>) {
constructor(title: String, groups: List<SidebarGroup>) :
this(title, if (groups is MutableList<SidebarGroup>) groups else groups.toMutableList())
}
В приведенном выше коде Platform declaration clash: The following declarations have the same JVM signature
ошибка вызвана вторичным конструктором класса (2-я строка).
Как мне подойти к этому? Должен ли я использовать так называемый поддельный конструктор (Companion.invoke ()) или есть какой-то лучший обходной путь?