AppCode 2016.2 Help

Change Signature

In this section:

Basics

The Change Signature refactoring combines several different modifications that can be applied to a method/function signature. You can use this refactoring for the following purposes:

  • To change the method/function name.
  • To change the method/function return type.
  • To add new parameters and remove the existing ones.
  • To assign default values to the parameters.
  • To reorder parameters.
  • To change parameter names and types.

When changing a method/function signature, AppCode searches for all usages of the method/function and updates all the calls, implementations, and override replacements of the method/function that can be safely modified to reflect the change.

For each new parameter added to a method/function, you can specify: A default value (or an expression) (the Default value field). You can also propagate the parameters you have introduced to the methods/functions that call the function whose signature you are changing. The refactoring result depends on whether you specify the default value and whether you use propagation. Propagation. New parameters can be propagated to any method/function that calls the method/function whose signature you are changing. In such case, generally, the signatures of the calling methods/functions change accordingly. These changes, however, also depend on the default values set for the new parameters . Default value. Generally, this is the value to be added to the method/function calls. If the new parameter is not propagated to a calling method/function, the calls within such method/function will also use this value. If the propagation is used, this value won't matter for the method/function calls within the calling methods/functions.

For each new parameter added to a method/function, you can specify:

  • A default value (or an expression) (the Default value field).

You can also propagate the parameters you have introduced to the methods/functions that call the function whose signature you are changing.

The refactoring result depends on whether you specify the default value and whether you use propagation.

Propagation. New parameters can be propagated to any method/function that calls the method/function whose signature you are changing. In such case, generally, the signatures of the calling methods/functions change accordingly.
These changes, however, also depend on the default values set for the new parameters .

Default value. Generally, this is the value to be added to the method/function calls.

If the new parameter is not propagated to a calling method/function, the calls within such method/function will also use this value.

If the propagation is used, this value won't matter for the method/function calls within the calling methods/functions.

Changing a method/function signature

  1. In the editor, place the cursor within the name of the method/function whose signature you want to change.
  2. Do one of the following:
    • Press ⌃F6.
    • Choose Refactor | Change Signature on the main menu or .
    • Choose Refactor | Change Signature on the context menu.
  3. In the Change Signature dialog, make the necessary changes to the method/function signature and specify what other, related, changes are required.

    You can:

    • Change the method/function name. To do that, edit the text in the Name field.
    • Change the method/function return type by editing the contents of the Return type field.
    • Manage the method/function parameters using the table and the buttons in the Parameters area:
      • To add a new parameter, click add and specify the properties of the new parameter in the corresponding table row.
      • To remove a parameter, click any of the cells in the corresponding row and click delete.
      • To reorder the parameters, use the arrowUp and arrowDown buttons. For example, if you wanted to put a certain parameter first in the list, click any of the cells in the row corresponding to that parameter, and then click arrowUp the required number of times.
      • To change the name or the default value of a parameter, make the necessary updates in the table of parameters (in the fields Name and Default value respectively).
  4. To perform the refactoring right away, click Refactor.

    To see the expected changes and make the necessary adjustments prior to actually performing the refactoring, click Preview.

    AppCode_ChangeSignature

See Also

Last modified: 5 December 2016