Add intention for replacing explicit function literal parameter with 'it'

Kotlin's function literals have a shortcut for one-argument literals:
the single argument doesn't need to be explicitly named, but can be
referred via the 'it' contextual keyword.

For example, 'array(1, 2, 3).filter { x -> x % 2 == 0 }'
          -> 'array(1, 2, 3).filter { it % 2 == 0 }'

Add an intention action for this transformation.
This commit is contained in:
Tuomas Tynkkynen
2014-02-08 15:57:54 -08:00
committed by Nikolay Krasko
parent 1dd57b5f6e
commit c6d6a32314
21 changed files with 226 additions and 1 deletions
@@ -0,0 +1,6 @@
fun foo(i: (Int) -> Unit) {}
fun test() {
foo { <caret>x ->
array(1, 2, 3).filter { x -> x % 2 == 0 }
}
}