Microsoft/TypeScript
Ver no GitHubGo-to-definition on `continue` and `break` should jump around(?) corresponding statement
Open
#51.224 aberto em 19 de out. de 2022
Effort: CasualExperience EnhancementHelp WantedIn Discussion
Métricas do repositório
- Stars
- (48.455 stars)
- Métricas de merge de PR
- (Mesclagem média 6d 17h) (9 fundiu PRs em 30d)
Description
Similar to #51222 and #51223.
/*END*/while (true) {
if (Math.random()) /*START*/break;
}
/*END1*/label: while (true) {
while (true) {
if (Math.random()) /*START*/break label;
}
}
/*END2*/
/*END1*/while (true) {
if (Math.random()) /*START*/continue;
}
/*END2*/
/*END1*/switch (Math.random() < 0.5) {
case true: /*START*/break;
}
/*END2*/
Given how go-to-definition on return, await, and yield might work, it's tempting to jump up to the top of the corresponding statement.
However, I could also see us jumping to wherever the break or continue itself would jump. That's a bit at odds with the original intent of go-to-definition on return since the point of that was to figure out "who owns the current return statement?"
If someone wants to send a PR and discuss more in that PR, they're welcome to.