This section discusses the Extract Parameter refactoring for Groovy. This refactoring lets you perform the following actions:
- Creating a new method parameter from the selected expression within a method. All the usages of the method will be auto-updated.
- Adding a parameter to a closure. If there is a variable, associated with the closure, the calls to this variable are replaced with the corresponding expressions.
In this section:
Examples
| Before | After |
|---|---|
class Cat { Cat cat = new Cat() def makePestOfItself(){ print ("miaou!!!!!!!!") } def makeTroubles(){ if (makePest){ makePestOfItself() } } } |
class Cat { Cat cat = new Cat() def makePestOfItself(String warning){ print (warning) } def makeTroubles(){ if (makePest){ makePestOfItself("miaou!!!!!!!!") } } } |
class Bar { def foo = { print 'H<caret here>ello, world!' } } new Bar().foo() new Bar().foo.call() |
class Bar { def foo = { String s -> print s } } new Bar().foo('Hello, world!') new Bar().foo.call('Hello, world!') |
- In the editor, place the cursor within the expression to be replaced by a parameter.
-
Do one of the following:
- Press ⌥⌘P⌥⌘P⌥⌘P⌃⌥P⌃⌥P.
- Choose Refactor | Extract | Parameter on the main menu.
- Choose Refactor | Extract | Parameter from the context menu.
- In the Extract Parameter dialog:
- Specify the parameter name in the Name field.
- Choose parameter type, and specify whether you want to declare the new parameter final, and create the overloading method.
- Click OK.