-
Notifications
You must be signed in to change notification settings - Fork 198
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Cohosting: Add semantic tokens support, via Roslyn OOP (#10097)
Part of #9519 This PR feels like the last month of my life, with most of that time simply fighting ServiceHub. This adds a new endpoint for the cohosting server to support semantic tokens. It's the first endpoint in the server. (Almost) the only thing it does is immediately call our to the OOP process to do the actual work. Logic is mainly provided by the same service that the existing semantic tokens endpoint uses, but for a small piece of functionality that is plugged in, via MEF, to call Roslyn via a new C# API (dotnet/roslyn#72495) instead of via LSP. Currently the syntax tree is computed on the fly in OOP, and the document Roslyn is asked about is the one that the LSP server creates via IDynamicFile. In future this will change to get the real source generated document, and data from the source generator for the tree etc. Reviewing commit-at-a-time is probably best. There are still a bunch of TODOs, some hard-coded bits, and some hacky bits, but I wanted to ensure this was actually reviewable and not too big. Worth nothing this won't build until the Roslyn PR mentioned above is merged, and a new package is available to update to.
- Loading branch information
Showing
86 changed files
with
1,410 additions
and
571 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2 changes: 1 addition & 1 deletion
2
...icrosoft.AspNetCore.Razor.LanguageServer/Common/VSInternalServerCapabilitiesExtensions.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.