usethesource / rascal-language-servers

An LSP server for Rascal which includes an easy-to-use LSP generator for languages implemented in Rascal, and an interactive terminal REPL.
BSD 2-Clause "Simplified" License
10 stars 7 forks source link

Rename refactoring support for Rascal (locals) #389

Closed toinehartman closed 6 days ago

toinehartman commented 1 month ago

Add rename support for Rascal itself (but not for DSLs). Can be triggered in VS Code using F2 or right-click->rename.

The renaming feature is intended to be released incrementally. This PR includes milestones 1&2 as described in #382.

toinehartman commented 3 weeks ago

All in all, I'm quite happy, looks good, this has been a significant amount of work. I think my main question is regarding the exceptions for the errors.

And it might be nice to have 1 integration test added to the UI test to make sure the rename also works (and keeps working).

Thanks. Processed all your remarks and added an integration test. Can you please have another look?

toinehartman commented 3 weeks ago

I pushed some more changes, addressing some remarks by @PaulKlint outside of this discussion. Especially af98b942 should highly reduce the number of parse tree visits in real scenarios. Now, a module tree will be visited at most once.

toinehartman commented 2 weeks ago

TODO:

sonarcloud[bot] commented 6 days ago

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
0.0% Coverage on New Code
0.0% Duplication on New Code

See analysis details on SonarCloud