Size: a a a

Kotlin Community

2020 June 21

Y

You in Kotlin Community
не получится :(
источник

QH

Quantum Harmonizer in Kotlin Community
реклама личи через 3, 2, 1…
источник

AN

Alexander Nozik in Kotlin Community
You
если хочется извращений, то помогите решить одну проблему.

мне нужно создать метод, который будет принимать на вход другой метод и его аргументы. Принимаемый метод может быть методом любого класса и иметь любое количество аргументов. Как такое сделать?

у меня пока так, но это не работает с разным количеством агрументов:

fun uberFunction(someFunction: KFunction1<Any, Any>, args: Any) {
   someFunction(args)
}
Передать аргументы массивом и через рефелекты
источник

AN

Alexander Nozik in Kotlin Community
Quantum Harmonizer
реклама личи через 3, 2, 1…
а он-то тут при чем?
источник

Y

You in Kotlin Community
срач про необходимость личи через 3, 2, 1...
источник

AN

Alexander Nozik in Kotlin Community
You
срач про необходимость личи через 3, 2, 1...
Да нет спора, что хорошая вещь, но оно же не про это вообще
источник

QH

Quantum Harmonizer in Kotlin Community
You
если хочется извращений, то помогите решить одну проблему.

мне нужно создать метод, который будет принимать на вход другой метод и его аргументы. Принимаемый метод может быть методом любого класса и иметь любое количество аргументов. Как такое сделать?

у меня пока так, но это не работает с разным количеством агрументов:

fun uberFunction(someFunction: KFunction1<Any, Any>, args: Any) {
   someFunction(args)
}
у меня HTTP-темплейты и SQL-темплейты работают похожим образом
источник

Y

You in Kotlin Community
да я шучу
источник

Y

You in Kotlin Community
о, гляну
источник

QH

Quantum Harmonizer in Kotlin Community
You
да я шучу
Жаль. Я думал, аргументов подкинешь, и я стану чутка лучше :)
источник

AN

Alexander Nozik in Kotlin Community
По-моему это совсем не то
источник

AN

Alexander Nozik in Kotlin Community
Ему надо проксю на метод навесить
источник

Y

You in Kotlin Community
Выглядит сложно
источник

QH

Quantum Harmonizer in Kotlin Community
You
Выглядит сложно
там есть класс, который все арности сваливает к одному вызову — invokeUnchecked(Array<Any?>)
источник

AN

Alexander Nozik in Kotlin Community
You
Выглядит сложно
Я бы не парился и взял бы готовый инструментарий из рефлектов. Михаил их ненавидит.
источник

QH

Quantum Harmonizer in Kotlin Community
На самом деле, внутри котлина тоже есть похожий класс, который реализовывает все арности. Но он deprecated и вокруг него существует досадный баг…
источник

Y

You in Kotlin Community
ладно попробую для начала рефлексию
источник

МР

Михаил Резниченко... in Kotlin Community
Для интересующихся KorGE - мы тут выбрали победителей Game Jam:
https://blog.korge.org/2020/06/winners-of-1st-korge-gamejam.html
Все игры - участники конкурса, написанные на Kotlin:
https://itch.io/jam/korge-gamejam-1/entries
источник

AN

Alexander Nozik in Kotlin Community
👍
источник

AN

Alexander Nozik in Kotlin Community
Очень хоЧем обзор. Что хорошо, что плохо, что по ресурсам.
источник