2016-12-26 12 views
10

В Котлине в их определении можно указать имена лямбда-аргументов.Kotlin: Как называются лямбда-аргументы?

fun example(lambda: (a: Int, b: Int) -> Int) 

Как вы можете видеть, a и b названы в лямбда. Я думал, что это может быть действительно полезной информацией для IDE, для генерации lambdas с именами параметров, заполненными .. но по крайней мере с IntelliJ функциональность либо не существует, либо работает так, как я не знаю.

Итак, что такое использование названных аргументов лямбда? Они каким-то образом меняют выход компиляции? И есть ли у вас какие-нибудь трюки?

ответ

11

В настоящее время ни один элемент языка не использует эти имена, и, насколько я знаю, единственное, что делает это поколение шаблонов лямбда с помощью IDE плагина:

enter image description here

Затем Tab или Enter, и вы получите лямбда с именами параметров, объявленных в определении example:

enter image description here

Также см. Эту проблему: Make use of named higher order function parameters