@kotlin_lang

Страница 954 из 982
Larymar
16.10.2018
18:37:55
подскажите либу, для работы с xml нужно парсить в обе сторонызаписывая в файл и читая из файла

Alexander
16.10.2018
18:41:49
javax.xml

Mikhail
16.10.2018
19:33:36
подскажите как добавить элемент в лист
Кури мануалы https://kotlinlang.ru/docs/reference/collections.html

kle
16.10.2018
19:42:09
Здравствуйте. Можете, пожалуйста, подсказать, можно ли спарсить все данные с андроид приложения как-то? Ну то есть больше вопрос в том, как получить ссылку для гет запроса по которой возвращаются, собственно все данные.(все участники + их личные данные но это наверное уже какой-то другой запрос нужно, имея их ID)

Google
kle
16.10.2018
19:42:34




kle
16.10.2018
19:46:20
А, ну да, что-то я баран, спасибо

Mi
16.10.2018
19:46:38
А вообще какая-то странная задача, тут все зависит от конкретного приложения

Sergey
16.10.2018
20:28:49
о, наконец сделали в идее поддержку директорий нормальную для котлина

Sergey
16.10.2018
20:32:35
ну это когда ты прям в src можешь себе сделать котлиновский файл и в нем задать нужный неймспейс

не создавая колбасу из main/kotlin/com/demo/blabla/module/..

Денис
16.10.2018
20:33:05
Окейъ

Sergey
16.10.2018
20:33:25
это было в стайлгайде описано, но в идее не работало до недавнего времени

Sergey
16.10.2018
20:47:45
Google
Sergey
16.10.2018
20:49:34
https://github.com/ktorio/ktor-samples/tree/master/app/kweet вот как тут например

Руслан
16.10.2018
20:53:30
Действительно интересно выглядит, для новичков хорошо и на гитхабе удобнее. Надо будет как-нибудь тоже так сделать

Igor
16.10.2018
20:56:55
не создавая колбасу из main/kotlin/com/demo/blabla/module/..
В что будет если пакет не указать?

Sergey
16.10.2018
20:57:52
можно просто main фигачить функцию без пакета)



из стайлгайдов: In pure Kotlin projects, the recommended directory structure is to follow the package structure with the common root package omitted (e.g. if all the code in the project is in the "org.example.kotlin" package and its subpackages, files with the "org.example.kotlin" package should be placed directly under the source root, and files in "org.example.kotlin.foo.bar" should be in the "foo/bar" subdirectory of the source root).

Igor
16.10.2018
20:59:46
Интересно, а для ведра это сработает?

Sergey
16.10.2018
21:00:14
а че б и нет, это в градле настраивается

sourceSets { main.kotlin.srcDirs = [ 'src' ] test.kotlin.srcDirs = [ 'test' ] main.resources.srcDirs = [ 'resources' ] }

Quantum Harmonizer
16.10.2018
21:21:54
Кто-нибудь писал package-info.kt? У меня чёт ссылки (хоть в квадратных скобках, хоть @see не резолвятся, хотя в доках к классам всё ок



OlegKrikun
16.10.2018
22:13:32
sourceSets { main.kotlin.srcDirs = [ 'src' ] test.kotlin.srcDirs = [ 'test' ] main.resources.srcDirs = [ 'resources' ] }
это ты папки флаворов скипаешь, а в тексте походу сказано скипать основной пакет

Alexander
17.10.2018
04:53:59
Vladimir
17.10.2018
04:58:20
Это от докки
+ аннотации для пакета

Kotlin не уважает пакеты, вот package-info и нету

Alexander
17.10.2018
05:04:56
Скажем так, котлин под пакетами понимает не директории

Vladislav
17.10.2018
07:39:01
Никто не подскажет почему в данном случае компилятор не ругается на несоответствие типов, а приводит все к общему типу, в данном случае Any? val map = mapOf<Int, String>() map.getOrElse(1) { mapOf(1 to 1) }

Google
Vladimir
17.10.2018
07:42:46
Никто не подскажет почему в данном случае компилятор не ругается на несоответствие типов, а приводит все к общему типу, в данном случае Any? val map = mapOf<Int, String>() map.getOrElse(1) { mapOf(1 to 1) }
Наверное, потому, что он в такой ситуации выводит тип map как Map<Int, Any>, т.к. он не указан явно. Т.е. использование локальной переменной может повлиять на её выведенный тип.

Vladislav
17.10.2018
07:49:57
Странно просто, мне казалось тип должен выводиться на основании переменной. При этом если ничего не возвращать, то все таки возникает "Type mismatch: inferred type is Unit but String was expected"

Andrew
17.10.2018
07:57:05
Никто не подскажет почему в данном случае компилятор не ругается на несоответствие типов, а приводит все к общему типу, в данном случае Any? val map = mapOf<Int, String>() map.getOrElse(1) { mapOf(1 to 1) }
https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/get-or-else.html inline fun <K, V> Map<K, V>.getOrElse( key: K, defaultValue: () -> V ): V Лямбда же должна возвращать String в этом случае, а не Map.

Vladimir
17.10.2018
07:57:18
А, понял. У getOrElse типы ключей и значений могут отличаться от тех, которые у Map, т.к. это extension. И она приводится к Map<Int, Any>.

А происходит так потому, что тип V у Map помечен как out

Vladislav
17.10.2018
07:58:56
Andrew
17.10.2018
07:59:03


А, всё.

Понял суть вопроса наконец-то.

Vladislav
17.10.2018
08:01:47
А происходит так потому, что тип V у Map помечен как out
Модификатор out вроде не стоит. Или это неявно происходит?

Vladimir
17.10.2018
08:02:28
Модификатор out вроде не стоит. Или это неявно происходит?
Он стоит в месте объявления класса Map. Declaration-site variance называется.

Vladislav
17.10.2018
08:03:00
О, понятно тогда, спасибо)

Vladimir
17.10.2018
08:03:50
Компилятор видит этот код так: val map: Map<Int, String> = mapOf<Int, String>() map.getOrElse<Int, Any>(1) { mapOf<Int, Int>(1 to 1) }

Alex
17.10.2018
08:06:23
Компилятор видит этот код так: val map: Map<Int, String> = mapOf<Int, String>() map.getOrElse<Int, Any>(1) { mapOf<Int, Int>(1 to 1) }
Котлиновский типы не стирает разве? Я этим вопросом не задавался кстати

Alex
17.10.2018
08:07:17
Типы в генериках

Vladimir
17.10.2018
08:07:52
Оно самое
Ну так оно в рантайме, после компиляции. Вся суть дженериков в JVM в том, что хотя бы компилятор их видит)

Google
Alex
17.10.2018
08:08:07
стирает, jvm же
На железе всё биты в триггерочках)

Quantum Harmonizer
17.10.2018
08:24:56
У самого котлина пакеты в отдельном ридми описаны
Хмм, а как предполагается добавлять эти ридми когда собираешься джарник с документацией?

Vladimir
17.10.2018
08:28:06
Хмм, а как предполагается добавлять эти ридми когда собираешься джарник с документацией?
Наверное, вас интересует это http://kotlinlang.org/docs/reference/kotlin-doc.html#module-and-package-documentation

OlegKrikun
17.10.2018
10:27:24
В твиторе пишут что видео со второго дня котлинконфа доступны

OlegKrikun
17.10.2018
10:55:46
Так, а есть какая возможность ограничить набором констант область значений инлайн класса над стрингой?

Admin
ERROR: S client not available

OlegKrikun
17.10.2018
10:57:05
Бл, понял что опять пытаюсь придумать замену енуму =(

Quantum Harmonizer
17.10.2018
11:02:43
Pavel
17.10.2018
11:06:44
А вы не хотели бы в котлине синтаксис енумов как в свифте?

Когда имя класса можно опустить

OlegKrikun
17.10.2018
11:07:32
Mikhail
17.10.2018
11:09:34
OlegKrikun
17.10.2018
11:09:49
А вы не хотели бы в котлине синтаксис енумов как в свифте?
хочу что бы енумы в котлине стали просто синтактичским сахаром и превращались в чонить другое при компиляции что бы не пришлось со всеми с кем работаю бодаться по поводу истерии про енму на андроеде =)))

Mikhail
17.10.2018
11:10:03
который возвращает не твой InlineClass, а InlineClass?

Mikhail
17.10.2018
11:10:15
и тогда он все проверяет

OlegKrikun
17.10.2018
11:10:20
Mikhail
17.10.2018
11:10:31
нуда

можно и так

Google
OlegKrikun
17.10.2018
11:11:04
может, пора просто прекратить истерию? А прогард сделает, что может
общестенность давит ) задралло нервы тратить на объяснения )

Quantum Harmonizer
17.10.2018
11:11:59
общестенность давит ) задралло нервы тратить на объяснения )
А общественность использует анонимные классы, анонимные функции, лямбды, метод рефы, проперти рефы, делегаты? Мне кажется, поводов биться в истерике очень много.

Mikhail
17.10.2018
11:12:15
общестенность давит ) задралло нервы тратить на объяснения )
скажи общественности, чтобы принесла бенчмарки с пруфами

после прогарда

OlegKrikun
17.10.2018
11:13:06
А общественность использует анонимные классы, анонимные функции, лямбды, метод рефы, проперти рефы, делегаты? Мне кажется, поводов биться в истерике очень много.
да, достаточнго просто в окна выглянуть или новости почитать =) но тема с енумами была разрекламированна сильно ("ты чооо, нам на ИО говорили что так низяяяя")

Quantum Harmonizer
17.10.2018
11:13:40
Мда. Неграмотность гугла усиливается неграмотностью общественности.

OlegKrikun
17.10.2018
11:14:10
угу, они до сих пор доку как грейдл обновлять не пофиксили

у них там написано что надо просто версию в пропертях сменить

а то что надо бы джарник врапера сменить и gradlew скрипты обновить не слова =)

OlegKrikun
17.10.2018
11:15:51
ну ./gradlew wrapper это делает +)

Alexandr
17.10.2018
11:34:43
я с 2.1 до 4.10 апал просто в пропертях и все без проблем работает

OlegKrikun
17.10.2018
11:36:11
ну оно конечно и так работает, но логично предположить что раз они таки что то меняют в джарнике и скриптах, то их тоже стоит держать обновлёнными

меняешь версию в проперти, а потом запускаешь ./gradlew wrapper (ну или сразу его с указанием версии куда апацца)

Alexandr
17.10.2018
11:39:59
я вообще врапером не пользуюсь) вообще редко)

Mikhail
17.10.2018
11:43:50
Учитывая, что я в последнее время слышу о clojure буквально отовсюду, ничего странного не вижу

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