-
-
Notifications
You must be signed in to change notification settings - Fork 397
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[3.0] Refactor SilkTouch to Use Roslyn Workspaces + more #2288
Conversation
Minimum allowed coverage is Generated by 🐒 cobertura-action against 14d3e58 |
a76c488
to
2631cee
Compare
This has been rebased and to the best of my knowledge and belief it's ready for review @curin. It's quite hard to review though, I'd focus on the SilkTouch changes. Most of the bindings changes are fiddling with usings or member ordering, which really I would like to somehow make deterministic so it doesn't pollute PRs like it has here. |
Summary of the PR
Refactors SilkTouch to make it fit for the future.
Related issues, Discord discussions, or proposals
Links go here.
Further Comments
ClangScraper is now a mod in its own right
It was too special and I wanted to ensure any major refactor made the core of SilkTouch nothing but a mod execution and documents pipeline, rather than being magical and tied to ClangSharp intrinsically.
Use Roslyn Workspaces
This is so we can make use of the
Renamer
which uses the semantic model to determine usages of the symbol we're renaming, rather than having to work all that context out ourselves. This is much slower, but more correct and fixes issues encountered in #2234 wherein the renames didn't propagate throughthing->a->b
for instanceRepository structure
As discussed in team talk.
Dependencies
Dependents
Supersedes