Size: a a a

Kotlin Community

2019 October 29

RI

Ruslan Ibragimov in Kotlin Community
Denys
А что в settings лежит?
источник

BV

Boris Vanin in Kotlin Community
Denys
У вас backend-проект?
Обычно, да
источник

D

Denys in Kotlin Community
Мне пока хватало использовать Versions.kotlin где-то в buildSrc.
источник

BP

Bogdan Panchenko in Kotlin Community
Denys
Я вот так делаю - по мотивам недавних постов Руслана.

fun RepositoryHandler.kotlin() {
   if (Version.kotlin.contains("-eap")) {
       maven(url = "https://dl.bintray.com/kotlin/kotlin-eap")
   }
}
тут мавен
источник

AL

Anton Lakotka in Kotlin Community
Глупый вопрос по kotlinx.serializer. У меня object наследует sealed класс.
Сам sealed класс отмечен @Polymorphic, а вот на object почему-то @Serializable не срабатывает.  Что впринципе логично, но тогда вопрос, как настроить PolymorphicSerializer чтобы он понимал когда нужно возвращать объект?
источник

AN

Alexander Nozik in Kotlin Community
Anton Lakotka
Глупый вопрос по kotlinx.serializer. У меня object наследует sealed класс.
Сам sealed класс отмечен @Polymorphic, а вот на object почему-то @Serializable не срабатывает.  Что впринципе логично, но тогда вопрос, как настроить PolymorphicSerializer чтобы он понимал когда нужно возвращать объект?
Пока только через SerializationModule
источник

AL

Anton Lakotka in Kotlin Community
У меня пока ломается на этапе компиляции. компайлер плагин ругается что  не указан сериалайзер для объекта.

Я могу выставить ContextualSerialization конечно. Но тогда что в SerializationModule делать?
там ведь тоже нужно мапить конкретные классы с их сериализаторами.
источник

AL

Anton Lakotka in Kotlin Community
я пока написал свой сериализатор в 3 строки. но мб есть готовое решение ?
источник

AN

Alexander Nozik in Kotlin Community
Anton Lakotka
У меня пока ломается на этапе компиляции. компайлер плагин ругается что  не указан сериалайзер для объекта.

Я могу выставить ContextualSerialization конечно. Но тогда что в SerializationModule делать?
там ведь тоже нужно мапить конкретные классы с их сериализаторами.
Не,ну надо руками поставть везде Serializeable автоматом оно только для интерфейсов и силов выставляется
источник

AL

Anton Lakotka in Kotlin Community
на @Serializeable и object  ругается
источник

AL

Anton Lakotka in Kotlin Community
мб у меня страя версия и в новой пофиксили
источник

AN

Alexander Nozik in Kotlin Community
Anton Lakotka
мб у меня страя версия и в новой пофиксили
Ну весь смысл этой аннотации в том, что она автоматом генерит сериализатор. Ругаться может если одно из полей не Serializeable
источник

AL

Anton Lakotka in Kotlin Community
важный момент. объект пустой
источник

AL

Anton Lakotka in Kotlin Community
т.е. это что-то вроде Unit объекта
источник

AN

Alexander Nozik in Kotlin Community
Anton Lakotka
важный момент. объект пустой
Тогда не знаю
источник

AN

Alexander Nozik in Kotlin Community
Можно вызвать дух @sandwwraith
источник

AL

Anton Lakotka in Kotlin Community
@Polymorphic
sealed class Subject {
   //@Serializable(with = MainResourceSerializer::class)
   @Serializable
   object MainResource : Subject()
   @Serializable
   class SubResource(val subId: String) : Subject()
}


вот такое не компилируется
источник

LS

Leonid Startsev in Kotlin Community
Anton Lakotka
@Polymorphic
sealed class Subject {
   //@Serializable(with = MainResourceSerializer::class)
   @Serializable
   object MainResource : Subject()
   @Serializable
   class SubResource(val subId: String) : Subject()
}


вот такое не компилируется
objectы пока не @Serializable, потому руками к ним нужно сериалайзер написать, всё верно
источник

AL

Anton Lakotka in Kotlin Community
ок, спасибо.
источник

LS

Leonid Startsev in Kotlin Community
C 1.3.60 и https://github.com/Kotlin/kotlinx.serialization/pull/572 всё должно стать хорошо, там даже тест с классами как у вас есть
источник