microsoft / microsoft/vscode-cpptools

Implement "Go to Implementation" to find all the derived classes

Offen
#3,941 7 Kommentare 43 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Feature Request Language Service Works in VS
Vorherrschende Sprache
TypeScript
Sterne
6.2k
Forks
1.7k
Ø Merge
14 Std. 46 Min.
Gemergte PRs (30 T.)
61

Beschreibung

Any sort of class inheritance info/viewing is unlikely to be available any time soon -- I don't think even Visual Studio has this available. Maybe you could parse the find all references result to check for references of classes that involve inheritance, but that would only work if the base class reference were on the same line as the sub class reference.

VSCode has implemented 'go to implementation' from version 1.35. If I can get the implementation locations of symbol, I think it's ok.

Originally posted by @Lennon925 in https://github.com/microsoft/vscode-cpptools/issues/3886#issuecomment-512705520

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der Untersuchung des bestehenden find-all-references-Pfads und wie dieser Implementierungspositionen für Symbole bereitstellt. Verwende das Verhalten von VSCode 1.35 „Go to Implementation“ als Referenzpunkt; als abgeschlossen gilt die Aufgabe, wenn die Erweiterung alle Implementierungen abgeleiteter Klassen für ein Symbol finden kann.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp, typescript, vscode
Bereich
devtools
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.