@kotlin_lang

Страница 308 из 982
Yuri
06.09.2017
12:33:44
файлы находятся в проекте

но в аар не попадают

Lev
06.09.2017
12:50:23
Оооохх... @JsName доставил... ну ладно, эти типа трудности переходного периода

Google
Алексей
06.09.2017
12:54:11
private val handleMessage = { message: Message -> Logger.d("Message obj: ${message.obj}") // <- не null Handler(handlerThread.looper).post { Logger.d("Message obj inside handler: ${message.obj}") // <- null when (message.what) { MESSAGE_REGISTER -> { obtainRegister(message.obj) } MESSAGE_UNREGISTER -> { } MESSAGE_SEND_ACTION -> { obtainAction(message.obj) } } } } Ребят, а есть способы избежать обнулливания сообщения кроме его копирования?

Просто не помню чтобы в яве с этим проблемы испытывал)

balolam
06.09.2017
13:21:07
Просто не помню чтобы в яве с этим проблемы испытывал)
А тут Kotlin не причем вообще, в Java будет такое же поведение

Алексей
06.09.2017
13:21:51
т.е только копировать Message? ?

Алексей
06.09.2017
13:33:12
Ну код ты видел, вывод такой Message obj: Bundle[mParcelledData.dataSize=104] Message obj inside handler: null Но ежели говоришь что работаешь поковыряю еще)

? animufag ?
06.09.2017
13:33:37
по идее кто-то берёт этот месадж и обнуляет obj

видимо человеку нужна семантика копирования, либо кто-то не должен получать месадж

мб ещё в идее вотчпоинт поставить

Алексей
06.09.2017
13:40:28
может потому-что хэндлер внутри хэндлера внутри сервиса, данные которому передаются из приложения? ?

Va
06.09.2017
15:16:27
можно как-то из дженерик датакласса сделать его копию с другим дженериком ?



Vic
06.09.2017
15:17:09
Ctrl+c, cntrl+v

Google
Quantum Harmonizer
06.09.2017
15:19:05
Как можно поменять тип, если там и так type variable?

Va
06.09.2017
15:19:29
можно, конечно, делать ее нетипизированой, и сделать типизированую ф-ю а-ля fun <T> getTyped() = data as? T

Quantum Harmonizer
06.09.2017
15:19:55
Что за ужас там происходит?)

Vic
06.09.2017
15:20:02
fun <U>

Введи другой параметр

И возвращай Resource<U>

Va
06.09.2017
15:21:10
смотри, у меня есть Resource<String>, мне из него нужно сделать Resource<Int>, допустим, создав копию всех полей из оригинального

Vic
06.09.2017
15:21:23
Я ответил

Сделай так

Va
06.09.2017
15:21:37
добавлю я полей и их все приклеивать скотчем ?)

я к тому, что мб есть красивый метод какой-то

есть copy, но он вернет того же типа класс

Quantum Harmonizer
06.09.2017
15:22:38
Va
06.09.2017
15:23:45
справедливо, но все еще, нет способа обойти то, что мне придется приклеивать скотчем все остальные поля, если я добалвю ?

Quantum Harmonizer
06.09.2017
15:24:53
Ну приклей синей изолентой)

Va
06.09.2017
15:25:17
вас понял, комрад ?

Sergey
06.09.2017
19:37:02


кто-нибудь сталкивался с таким? добавляю новый котлиновский модуль к проекту

для app все в порядке, а для domain и data нет

Google
Quantum Harmonizer
06.09.2017
19:38:52
Сталкивался, фикс не искал

Dibro
06.09.2017
19:38:57
котлин плагин, с 1.1.1 вроде, сам добавляет версию

Sergey
06.09.2017
19:40:12
Сталкивался, фикс не искал
какие-нибудь unpredictable issues были?

Dibro
06.09.2017
19:40:53
убрал, ворнинг остался
после реимпорта?

Quantum Harmonizer
06.09.2017
19:45:06
Sergey
06.09.2017
19:45:34
ок, спасибо

Alex
07.09.2017
06:53:50
интересно я один думаю что kotlin от слова кот

Lev
07.09.2017
06:54:50
Так или иначе но ты думаешь не верно

Mi
07.09.2017
06:56:08
но всё равно миленько

Yushka
07.09.2017
07:00:15
кот, который линяет, между прочим

Vic
07.09.2017
07:06:38
от нем. kot

Nikita
07.09.2017
07:34:15
Коллеги, подскажите пожалуйста как бы вы вышли из такой ситуации? Есть класс c параметрами перечисленными в конструкторе, например такой open class Chief(@SerializedName("full_name") var fullName: String?, @SerializedName("short_name") val shortName: String?), и мы хотим переопределить геттер для поля, например fullName. Корректно ли создать доволнительное поле для такого действия (переименовав изначальное на _fullName), например так: val fullName = _fullName get() = field ?: "empty_name_value" или есть более лакончиные способы?

Павел
07.09.2017
07:35:22
var fullName:String?="empty_name_value"

Nikita
07.09.2017
07:37:20
var fullName:String?="empty_name_value"
может я конечно рукожоп, но у меня не удалось заставить ретрофит инициализировать поля классов котлина дефолтными значениями. Я уверен что можно, но пока способа не нашел

Mi
07.09.2017
07:40:00
проблема в том, что вероятно он через рефлексию создаёт объекты конструктором без параметров

может через init можно

Lev
07.09.2017
07:44:54
Кто очереди хорошо знает? RabbitMQ?

Nikita
07.09.2017
07:44:59
может через init можно
в смысле через init? проверять значение на null и подставлять то что я определил выше?

Google
Alexey
07.09.2017
08:10:00
может я конечно рукожоп, но у меня не удалось заставить ретрофит инициализировать поля классов котлина дефолтными значениями. Я уверен что можно, но пока способа не нашел
Причем тут вообще ретрофит, десериализация не его облать ответственности, за неё у вас судя по аннотациям отвечает джексон и он скорее всего просто перетерает ваше дефолтное значение нулом. Так вам таки придется юзать дополнитеньное свойство для добавления дефолтного значения

может через init можно
init от задания значения при обьявлении поля не отличается совершенно ничем

Quantum Harmonizer
07.09.2017
08:22:35
может я конечно рукожоп, но у меня не удалось заставить ретрофит инициализировать поля классов котлина дефолтными значениями. Я уверен что можно, но пока способа не нашел
Нужно задать значения по умолчанию всем параметрам конструктора, тогда Котлин создаст дефолтный конструктор, а Gson его найдёт.

Sergey
07.09.2017
08:27:35
иногда аж завидую тем у кого фултайм работа на котлине

Anton
07.09.2017
08:28:17
чему тут завидовать то)

писать на котлине райское наслаждение а на джаве муки ада?)

Sergey
07.09.2017
08:29:02
как-то так)

Anton
07.09.2017
08:29:05
)

Eugene
07.09.2017
08:29:15
)))

Sergey
07.09.2017
08:29:34
в моем случае это много пхп кода еще

джава уже вся на котлин переехала

Alexey
07.09.2017
08:29:41
Не как то, именно так и есть

Eugene
07.09.2017
08:30:12
Самое смешное что ещё и кастомные вьшки стали писать на котлине

В итоге которые потом все обходят

Anton
07.09.2017
08:30:34
какие то сказки про котлин

Alexey
07.09.2017
08:31:17
Всмысле обходят?

Lev
07.09.2017
08:31:37
я не понял так ему хорошо или плохо на котлине?

Anton
07.09.2017
08:31:43
кому

Google
Alex
07.09.2017
08:31:57
В Vue чатике обсуждали возможность писать на котлине внутри vue файла

Lev
07.09.2017
08:32:11
кому
все, понял

Alexey
07.09.2017
08:32:27
На котлине всем должно быть хорошо!

Lev
07.09.2017
08:33:11
О, здаров =)
а я тебе вот что скажу ( идею еще не пробовал) Надо в разделе js файла vue просто ссылаться на обхект котлина. А уж код котлина омжет быть в своем проекте и спокойно компилиться весь сразу

Nikita
07.09.2017
08:33:12
Так в каком смысле кастомные вьюшки на котлине обходят?

Eugene
07.09.2017
08:33:57
Всмысле обходят?
знкаомый написал какйто красивый пргресс бар, у него в ишью просьбы переписать на жаву, так как сделано красиво, но тащить из-за этого котлин либу в проеки не хотят

Alex
07.09.2017
08:34:32
Господа из JetBrains, у вас не возникала идея написать транслятор Котлина в байткод V8? Идея немного безумная, конечно, но все же?

Sergey
07.09.2017
08:35:05
asmjs?

Eugene
07.09.2017
08:35:12
На котлине всем должно быть хорошо!
а так да, на котлине хорошо

Lev
07.09.2017
08:37:27
Это чот прям совсем сложно работает
не, это будет просто. внутри vue тебе надо экспортнуть js объект.

вот этот объект взять из котлина.

Anton
07.09.2017
08:51:08
иногда аж завидую тем у кого фултайм работа на котлине
а много таких? (только не мобильщиков, а бекенд)

Страница 308 из 982