
Kevin
21.03.2018
20:28:47
guys .. is now working

Andrew
21.03.2018
20:28:54
Congrats!

Kevin
21.03.2018
20:29:24
i pass null value to this(name, uu, "", "", "")
thanks

Глеб
21.03.2018
20:29:59

Google

Andrew
21.03.2018
20:30:11
Try Maksim's solution, you probably don't need secondary constructor at all.

Kevin
21.03.2018
20:30:20
heeeee... great

Maxim
21.03.2018
20:30:20

Kevin
21.03.2018
20:30:49

Andrew
21.03.2018
20:32:37
ойфу
мне вот стрёмно себе представлять тут в телеге общение с тем же объёмом сообщений, как хотя бы в #general там (я уже молчу о всех каналах в куче). так что фу, не фу, а инструмент свои задачи решает)

Quantum Harmonizer
21.03.2018
20:37:22

Sergey
21.03.2018
20:40:37
есть еще дискорд)

Boris
22.03.2018
03:16:22

Quantum Harmonizer
22.03.2018
06:02:37

Victor
22.03.2018
06:10:34

Kylych
22.03.2018
06:11:06
А ещё телегу пытаются забанить в России.

Жабра
22.03.2018
06:18:54

Google

Quantum Harmonizer
22.03.2018
07:05:14

Alexey
22.03.2018
07:11:22
Слак в электроне просто бомба
Правда, ядро электрона переписывают на rust и возможно вскоре можно будет жить не перезапуская слак раз в день

Alex
22.03.2018
07:25:11
Жизнь без слака просто бомба

Alexey
22.03.2018
07:40:27

Maxim
22.03.2018
07:41:54
Ну раз уже пошёл такой оффтоп, то жизнь без скайпа - райское наслаждение. А слак по сравнению с ним - просто божественное приложение.

Quantum Harmonizer
22.03.2018
07:42:46
Сразу хочется процитировать Эскобара.

Albert
22.03.2018
07:45:49
Ещё раз, может с утра больше читают). Кто нибудь щупал kotlin/native под ios?

Pavlo
22.03.2018
07:46:21

Leonid
22.03.2018
07:48:36

Лёша
22.03.2018
07:48:44

Albert
22.03.2018
07:49:16

Alexey
22.03.2018
07:54:58
Котланы, на типы же нельзя сделать extension функции?

Quantum Harmonizer
22.03.2018
07:55:23

Alexey
22.03.2018
07:55:46
Ну типо, чтобы делать вызов Int.myExtensionFun

Quantum Harmonizer
22.03.2018
07:56:07

Alexey
22.03.2018
07:58:54

Quantum Harmonizer
22.03.2018
07:59:42

Alexey
22.03.2018
08:00:30
В вызове, не получится удобного dsl поверх этого навернуть

Google

Alexey
22.03.2018
08:01:01
Всё таки Companion != type, так что нельзя

Quantum Harmonizer
22.03.2018
08:01:15
в вызове — без изменений

Artem
22.03.2018
08:02:03

Quantum Harmonizer
22.03.2018
08:02:22

Artem
22.03.2018
08:02:39
??. Понял

Leonid
22.03.2018
08:04:45

Sergey
22.03.2018
08:09:17

Igor
22.03.2018
08:16:21

Alexey
22.03.2018
08:23:49
object Dummy
typealias MyType<A> = Dummy
fun <A> foo(): MyType<A> = Dummy
fun MyType<Int>.bar() = 1
fun MyType<String>.bar() = 2
Котлин вообще типы не уважает :(

Igor
22.03.2018
08:25:15
Ну и ? обратно в скалку

Alexey
22.03.2018
08:25:53
Охеренная логика, спасибо
Админы так всех людей, которые патются нащупать рамки языка, посылают?

Igor
22.03.2018
08:29:44
Ну ты пишешь хрень, а потом в чат жалуешься
(смирись - котлин практичный язык, но не единственный (просто возьми подходящий язык))

Vitalii
22.03.2018
08:30:29

Alexey
22.03.2018
08:30:46
И поэтому я не могу потыться придумывать удобные dsl да?

Vitalii
22.03.2018
08:30:59

Alexey
22.03.2018
08:32:01
Я тут спрашиваю потому что у местных должно быть больше опыта в языке, и вы можете мне подсказать, что нет так нельзя или это можно сделать вот так, как это сделал @Harmonizr

Konstantine
22.03.2018
08:32:16

Alexey
22.03.2018
08:32:35

Google

Quantum Harmonizer
22.03.2018
08:32:46

Konstantine
22.03.2018
08:32:52
Много слов
Одно лишнее слово, причем только в объявлении.

Alexey
22.03.2018
08:33:09
А при вызове функции?

Vitalii
22.03.2018
08:33:21

Alexey
22.03.2018
08:33:23

Quantum Harmonizer
22.03.2018
08:33:29

Alexey
22.03.2018
08:35:03

Beholder
22.03.2018
08:37:44
typealias не типы, а только другое название для других типов

Bogdan
22.03.2018
09:03:13
@Harmonizr а что он пытаестя сделать? fun Int.f(x: Int) { ... }
типа такого?

Quantum Harmonizer
22.03.2018
09:03:42
я ж не знаю :)

Konstantine
22.03.2018
09:03:56
Статичный метод как все поняли
Но правильно ли мы поняли...

Bogdan
22.03.2018
09:04:50
?
подумал попробывать ktor, у меня такой вопрос, как работать с БД, какие либы\фреймворки использовать можно или посоветуете

Quantum Harmonizer
22.03.2018
09:07:08

Bogdan
22.03.2018
09:07:30

Quantum Harmonizer
22.03.2018
09:07:42

Bogdan
22.03.2018
09:07:55
насчет него сомнения

Sergey
22.03.2018
09:08:02

Google

Bogdan
22.03.2018
09:08:11
но exposed я думаю подойдет для начала

Sergey
22.03.2018
09:08:16
пофиг в каком виде, хоть в калбеках, хоть реактивные интерфейсы

Alexey
22.03.2018
09:08:27

S
22.03.2018
09:08:53
Exposed научился не только в threadlocal транзакционность?

Alexey
22.03.2018
09:09:00
И чтобы их было легко определять кастомные

Artem
22.03.2018
09:09:17
К слову о ктор. Как можно мониторить ресурсы сервера и прочее? В серверах не шарю.
Может быть существует что-то, что по ссылке на сервере будет открывать что-то типа админ панели с инфой по ресурсам, запросам и т.д.? Поделитесь опытом пожалуйста)

Sergey
22.03.2018
09:09:36
+ prometheus для сбора

Artem
22.03.2018
09:11:24
Спасибо, попробую заюзать. Там ui есть какой-то ведь?


Тимур
22.03.2018
09:23:12
Всем привет.
Как получить nullablity-информацию для возвращаемых значений suspend функций из annotation процессинга?
Разверну немного контекст вопроса: я делаю rpc на базе coroutines и кодогенерации через kapt.
Допустим, есть rpc сервис такого вида:
@RpcService
interface MyRpcService {
suspend fun method1(a: Int, b: String): Int
suspend fun method2(c: Int, d: String): Int?
}
Одна из задач при изготовлении rpc - надо сгенерить примерно такой клиентский прокси-класс:
class MyRpcServiceProxy {
suspend fun method1(a: Int, b: String): Int {
кодогенеренный boilerplate,
который засовывает в сеть параметры,
получает ответ от сервера и возвращает его
}
suspend fun method2(c: Int, d: String): Int? {
...
}
}
В частности, кодогенератор должен знать, какой тип возвращают методы - Int или Int?
Кодогенератор на базе annotation processing имеет доступ к метаинформации о типах через пакет javax.lang.model
Возвращаемый тип он видит через Continuation<? super T>, где T - искомый тип.
Для обычных параметров nullablity можно узнать через наличие аннотации @Nullable, однако в случае Continuation как извлечь nullablity для T - непонятно.
Я излазил весь javax.lang.model, дергал все функции подряд, но нигде такой информации не нашел.


Aleqzandr
22.03.2018
09:23:52
Опыт разработки, удобно/неудобно. Туториалы и примеры
В целом норм, пришлось погемороиться, чтобы совместить ЖЦ ViewController c Activity/Fragment.
Kotlin внедрял в iOs посредством создания отдельного Framework, воспользоваться механизмом Multiplatform Projects пока неудалось.
Ну и основная засада в Kotiln/Native сейчас - это модель памяти, конечно.

Mikhail
22.03.2018
10:19:28
micrometer.io
оно умеет показывать сколько cpu и памяти было потрачено каждым тредом?

Kira
22.03.2018
10:34:13
даже Spring Data ?
Спринг-дата - это не либа, вот хибернейт - вроде, либо любой другой jpa2

Bogdan
22.03.2018
10:35:02