You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently Razor tooling provides an implementation of ISpanMappingService, and various features in Roslyn call into it in order to map locations in Razor generated C# code, back to the originating .razor or .cshtml file. With cohosting, we want to remove the need for this service and have Roslyn honour #line directives instead. Some of all of these items could potentially be limited to only supporting enhanced line directives, to ensure full fidelity of results. Further, it might be desirable to only support #line directives if there isn't an ISpanMappingService for the document in question, to allow venus/legacy Razor editor to be unaffected.
Things that might need specific changes
Renamer.RenameDocumentAsync:
Used to not rename generated documents.
No action hopefully, source generated documents filtered out elsewhere?
Things that can be changed to use line directives
(with varying degrees of difficulty, and appropriate API changes to ensure relevant Location data is available)
Currently Razor tooling provides an implementation of
ISpanMappingService
, and various features in Roslyn call into it in order to map locations in Razor generated C# code, back to the originating.razor
or.cshtml
file. With cohosting, we want to remove the need for this service and have Roslyn honour#line
directives instead. Some of all of these items could potentially be limited to only supporting enhanced line directives, to ensure full fidelity of results. Further, it might be desirable to only support#line
directives if there isn't anISpanMappingService
for the document in question, to allow venus/legacy Razor editor to be unaffected.Things that might need specific changes
Renamer.RenameDocumentAsync:
AddImportPlacementOptionsProviders.AllowImportsInHiddenRegions:
#line default
and#line hidden
between consecutive using directives razor#9991)Things that can be changed to use line directives
(with varying degrees of difficulty, and appropriate API changes to ensure relevant Location data is available)
RemoteCodeLensReferencesService.FixUpDescriptorsAsync
VisualStudioDocumentNavigationService.GetNavigationCallbackAsync
VisualStudioWorkspaceImpl.ShouldApplyChangesToMappedDocuments
ProtocolConversions.GetMappedSpanResultAsync
AbstractDocumentSpanEntry.TryMapAndGetFirstAsync
Part of dotnet/razor#9519
The text was updated successfully, but these errors were encountered: