JetBrains Rider 2022.2 Help

Inline Field refactoring

This refactoring helps you replace a field with its value and remove its declaration. For obvious reasons, the refactoring can be applied to a field that has only one write usage. This may be a constant or readonly field, or a field that is initialized and used in the same function.

If the target field has conditional or complex assignment and it is used within a single function, JetBrains Rider will create a local variable to handle the value of the field.

In the example below, we use this refactoring to inline a constant that has a single usage:

class Shape { private const string ErrorMessage = "Something has failed"; public void Draw(string s) { try { /*draw*/ } catch (Exception e) { Console.WriteLine("{0} : {1}", ErrorMessage, e); } } }
class Shape { public void Draw(string s) { try { /*draw*/ } catch (Exception e) { Console.WriteLine("{0} : {1}", "Something has failed", e); } } }

Inline a field

  1. Place the caret at the declaration or a usage of a field, which has only one write usage.

  2. Do one of the following:

    • Press Ctrl+Alt+N and then choose Inline Field

    • Press Ctrl+Alt+Shift+T and then choose Inline Field.

    • Choose Refactor | Inline Field from the main menu.

  3. If no conflicts are found, JetBrains Rider performs the refactoring immediately. Otherwise, it prompts you to resolve conflicts.

Last modified: 08 March 2021