Size: a a a

Rude P[rogramming]Offtop

2021 June 14

M

Mafioznik in Rude P[rogramming]Offtop
А какие тогда варианты? Брокер то все равно нужен(
источник

K

Kasem in Rude P[rogramming]Offtop
насчёт фондового хз. Но нужных людей нашел в чатах, где они обитают.
источник

K

Kasem in Rude P[rogramming]Offtop
в крипте
источник

VB

V B in Rude P[rogramming]Offtop
источник

DP

Dmitry Ponyatov in Rude P[rogramming]Offtop
источник

Na

Neon an Děv 8) in Rude P[rogramming]Offtop
Как тебе такое илонмаск
источник

VP

Vladimir Petrakovich in Rude P[rogramming]Offtop
А хватило бы @JvmName
источник

Na

Neon an Děv 8) in Rude P[rogramming]Offtop
не работает(
источник

VP

Vladimir Petrakovich in Rude P[rogramming]Offtop
А, точно, типы на вход всё равно должны отличаться
источник

VP

Vladimir Petrakovich in Rude P[rogramming]Offtop
Ну сурово
источник

I

Ilmir in Rude P[rogramming]Offtop
Хм, неплохо, неплохо. Выбирается нужная функция в зависимости от ожидаемого типа. Кажется, я нашёл ответ на вопрос, которые меня мучил последний месяц. Спасибо!
источник

VP

Vladimir Petrakovich in Rude P[rogramming]Offtop
Что за вопрос?
источник

с#

саша сок #KotlinGang... in Rude P[rogramming]Offtop
да ладно, это рофлорешение было, вот так получше будет
источник

с#

саша сок #KotlinGang... in Rude P[rogramming]Offtop
а я это лайфхак помоему от александра увидел
источник

VP

Vladimir Petrakovich in Rude P[rogramming]Offtop
Дойдут ли пользователи до р̶у̶ч̶к̶и̶ Nothing?, пытаясь сделать перегрузку по возвращаемому типу?
источник

I

Ilmir in Rude P[rogramming]Offtop
Вот этот набор функций, задача которых - приведение типов, мне очень не нравится тем, что их, сука, много.
    protected val MatchItem<TInput, TResult>?.r: TResult
       get() = nr!!

   protected val MatchItem<TInput, TResult>?.nr: TResult?
       get() = this?.asResult()

   protected val MatchItem<TInput, TResult>?.i: TInput
       get() = this?.asInput()!!

   protected val MatchItem<TInput, TResult>?.ni: TInput?
       get() = this?.asInput()

   protected val MatchItem<TInput, TResult>?.l: List<TResult>
       get() = this?.results?.filterNotNull() ?: emptyList()

   protected val MatchItem<TInput, TResult>?.il: List<TInput>
       get() = this?.inputs?.filterNotNull() ?: emptyList()

   protected val MatchItem<TInput, TResult>?.ls: String
       get() = this.il.joinToString("")

   protected val MatchItem<TInput, TResult>?.s: String
       get() = this.i.toString()

   protected val MatchItem<TInput, TResult>?.ns: String?
       get() = this?.i?.toString()


Теперь я могу заменить одной функцией, типа cast и компилятор сам выберет нужную реализацию в зависимости от ожидаемого типа.
источник

VP

Vladimir Petrakovich in Rude P[rogramming]Offtop
Остался один вопрос: а не стоит ли сделать это по-человечески?
источник

I

Ilmir in Rude P[rogramming]Offtop
Это и есть по-человечески. По сути, это граница между динамически-типизированным метаязыком и статически-типизированным котлином, причём первый не знает о втором и не знает о ожидаемых типах, но может генерировать котлин.
источник

AM

Andrew Mikhaylov in Rude P[rogramming]Offtop
А текущее ограничение котлина мотивировано чем-то, кроме совместимости с джавой, не знаешь?
источник

AM

Andrew Mikhaylov in Rude P[rogramming]Offtop
Я имею ввиду ограничение на уникальность сигнатуры только по выходным параметрам, исключая выходной.
источник