redhat-developer / redhat-developer/vscode-java
instanceof pattern inside lambda causes issues.
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
Using instanceof pattern inside of lambdas breaks multiple features. Examples:
- hovering over elements stops showing the signature
- Renaming from inside the method with the pattern pops an internal error (https://pastebin.com/iTZDjVq0)
- Attempting to Go To Definition of a field or method doesn't work inside the method with the pattern
- Sometime intellisense stops suggesting things
Environment
- Operating System: Windows 10 PRO 1909
- JDK version: Graalvm Java 16 21.1.0
- Visual Studio Code version: 1.59.1(2021-08-19)
- Java extension version: v0.81.0
[Please attach a sample project reproducing the error]
public class Test {
public static final void bug() {
Optional.empty().ifPresent(o-> {
if(o instanceof byte[] array) {
Object local = null;
}
});
}
}
https://pastebin.com/iTZDjVq0
https://pastebin.com/bc7rGyfE
Additional Informations
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 ouvrir l’exemple Java fourni dans VS Code avec la Java extension indiquée et reproduisez les échecs de hovering, rename, Go To Definition et IntelliSense. Activez les Java extension logs à l’aide du guide de troubleshooting lié et comparez le comportement avec les deux pastebins liés. Le travail est considéré comme terminé lorsque ces fonctionnalités du langage fonctionnent dans le pattern instanceof utilisé dans le lambda.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java, typescript
- Domaine
- developer-experience, devtools
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- Active
- Clarté
- Plutôt claire
- Accessibilité débutants
- 52/100