IntelliJ IDEA 12.1.0 Web Help

Refactor | Extract Method

Refactor | Extract Method

ItemDescription
NameIn this text box, specify the name of the function or method to be generated on the basis of the selected source code.
Visibility In this area, specify the visibility scope of the method to be generated.
Visibility In this area, specify the visibility scope of the method to be generated. The available options are:

Note

This area is available only in the Extract Method dialog box when refactoring is invoked from a method of a PHP class.

Declare staticSelect this check box to have a static method created.

Tip

If the new method cannot be declared as static, or, vice-versa, can be created only as a static method, the Declare Static check box is disabled.

Declare staticSelect this check box to have a static method created.

Note

  1. If the new method cannot be declared static, or, vice-versa, can be created only as a static method, the Declare Static check box is disabled.
  2. This check box is available only in the Extract Method dialog box when refactoring is invoked from a method of a PHP class.
Declare varargsSelect this option if you want to declare varargs instead of the array.
Fold parametersSelect this option to fold the parameters, for example, if you have an array, like int[] a = new int[i], and you want a[i] to be passed as a whole to the newly created method.
Extract chained constructorUse this option to extract chained constructor from the constructor body, replacing the original code with this.
Declare functional expressionSelect this check box to have the new function defined through a function expression, for example, new_method = function().

Note

The check box is only available when refactoring is invoked in the JavaScript context.

Output variable(s) This read-only text box displays the name of the variable through which the output of the new method/function will be passed to the calling method/function. Depending on your choice in the Return output variable(s) through area, this variable either will be used in a return statement or will be declared as the passed by reference parameter of the new method/function.
Return output variable(s) through In this area, specify the way in which the new method or function will return the output variables to the callee..
  • Return statement - select this option to have the output variables returned by value. If the Output variable(s) read-only field shows exactly one output variable, it will be used as the return value. If the selection outputs several variables, these variables will be returned as an array.
  • Parameter(s) passed by reference - select this option to have the output variables returned by reference. IntelliJ IDEA will generate a method/function without a return statement. Instead, the output variables will be added to the set of input parameters in the method/function declaration. The names of these variables will be prepended with an ampersand &.

Note

The area is available only when refactoring is invoked in the PHP context.

ParametersIn this area, select parameters to be passed to the new method/function.

Tip

If any parameter that is critical for the functionality of the new method is not selected, IntelliJ IDEA will be unable to proceed with the refactoring.

Move Up/DownUse these buttons to change the order of the parameters.
ParametersIn this area, specify the parameters to be passed to the new method/function.

Note

  1. If a parameter that is critical for the functionality of the new method is not selected, IntelliJ IDEA will be unable to proceed with the refactoring.
  2. In the PHP context, the list may also contain output variables that will be passed by reference from the calling function. The names of these variables are prepended with an ampersand &.
Move Up/DownUse these buttons to change the order of the parameters.
Replace tail "break/continue" statements with return statements Select this check box to have IntelliJ IDEA transform tail break or continue statements if the selection contains any.
Signature previewIn this read-only field, view the declaration of the new method/function.
Output variablesThis read-only field shows local variables or parameters that have been changed within the method body, and will be returned by the method.

See Also

Procedures:

External Links:

Web Resources: