JetBrains Rider 2020.3 Help

Go to Implementation

Navigate | Implementation(s)

This command lets you jump from a base type or member to any of its end implementations, bypassing intermediate steps in the inheritance chain. In other words, it works similar to Go to Derived Symbols but it does not show abstract classes and interfaces.

You can invoke this command from the Solution Explorer, from the Structure window and other tool windows. If necessary, you can navigate in the opposite direction with the Go to Base Symbols command.

Navigate to implementation of a type or a type member

  1. Place the caret at a symbol in the editor or select the symbol in the Structure tool window.

  2. Press Ctrl+F12 or choose Navigate | Implementation(s) from the main menu. Alternatively, you can press Ctrl+Shift+A, start typing the command name in the popup, and then choose it there.

  3. If the symbol has only one implementation, JetBrains Rider will navigate to it directly.

  4. If the symbol has several implementation, they will be listed in a drop-down. The list may contain items in both bold and regular font. Bold indicates that an item has direct inheritance, while the regular font is used for indirect inheritance.

    You can do one of the following:

    • Click the desired item to open it in the editor.

    • Select the desired item by pressing Up and Down and then press Enter to open it in the editor.

    • Start typing to filter results. Note that you can use CamelHumps here.

    • To view and analyze the list of matched items in the Find window, click Open in Find Window Icons general pin tab, press Shift+Enter or + on the numeric keypad.

Here is an example of how Go to Implementation bypasses intermediate steps. Suppose that the IDocument interface has the following inheritors:

JetBrains Rider: Go to implementation. Hierarchy
When you invoke the Go to Implementation upon the declaration or a usage of the IDocument, JetBrains Rider shows only two inheritors:
JetBrains Rider: Go to implementation. Drop-down list
That is because other classes are abstract and do not contain implementation of the IDocument.

Last modified: 08 March 2021