redhat-developer / redhat-developer/vscode-java
"Show Call Hierarchy" should have the ability to filter calls, or apply name filter patterns
Personne n'a encore pris cette issue.
- Langage dominant
- TypeScript
- Étoiles
- 2.3k
- Forks
- 546
- Merge moyen
- 20 h 1 min
- PR mergées (30 j)
- 11
Description
When I use Show Call Hierarchy on a property in a Java class object that is frequently used in both the main source code, as well as in the unit tests, the Call Hierarchy list would display a bunch of results. Because, the results include both the main source code and unit tests references, there isn't a way to automatically exclude certain folder directories or paths out from unwanted invocations.
I would like to request for the feature to apply any one of the following options:
- Filter test codes. (unit test codes, or codes residing under
src/test/java) - Apply name filter patterns. (Only includes reference names that matches the given filter patterns.)
- Limit the call depth of a given number. (Only goes down in depth up to the given number, inclusive.)
This feature is similar to Eclipse's "Filter Calls" dialog:

This is accessed by invoking "Show Call Hierarchy" on a class member, then opening "Filters" in the "More Options" menu in Eclipse IDE.
Currently, we don't have anything similar to this in Visual Studio Code with RedHat Java extensions installed.
Environment
- Operating System: Ubuntu 20.04.2 LTS
- JDK version: AdoptOpenJDK 11 (jdk-11.0.11+9)
- Visual Studio Code version: 1.61.2
- Java extension version: v1.0.0 (October 19, 2021)
Steps To Reproduce
- Open any Java class object whose object is used in both the main source code, as well as in the unit test codes.
- On any identifiers (method name, class field name, etc.), do
SHIFT+ALT+Hto invoke "Show Call Hierarchy". - Observe in the list, notice how there aren't any options available to filter certain call invocations from the results. You would have to manually click on the "X" button to remove the entry you don't want, one by one.
Current Result
The "Show Call Hierarchy" looks something like this.

Expected Result
After filtering out either all test codes, or applying a name filter pattern to exclude any references containing "test", it should look something like this:

Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par le point d’entrée Show Call Hierarchy de la VS Code Java extension et examinez la manière dont ses résultats sont présentés. Comparez le filtrage demandé du code de test, les modèles de noms et la limite de profondeur des appels, puis déterminez la portée acceptée. Le travail est terminé lorsque le comportement de filtrage choisi est disponible depuis la call hierarchy UI et couvre le cas d’utilisation indiqué.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java, typescript, vscode
- Domaine
- devtools
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 25/100