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 @@
array(1, 2, 3).filter <spot>{ it % 2 == 0 }</spot>
@@ -0,0 +1 @@
array(1, 2, 3).filter <spot>{ x -> x % 2 == 0 }</spot>
@@ -0,0 +1,5 @@
<html>
<body>
This intention replaces the explicit parameter of a single-parameter function literal with the implicit 'it' parameter.
</body>
</html>