Skip to content

Commit 3c42a6d

Browse files
committed
Merge remote-tracking branch 'upstream/main' into CohostWrapWithTag
2 parents 5f4a4d8 + ed209e5 commit 3c42a6d

File tree

91 files changed

+1203
-290
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

91 files changed

+1203
-290
lines changed

src/Compiler/Microsoft.CodeAnalysis.Razor.Compiler/src/Language/RazorCodeDocument.cs

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ public sealed partial class RazorCodeDocument
2424
public RazorFileKind FileKind => ParserOptions.FileKind;
2525

2626
private readonly PropertyTable _properties = new();
27+
private readonly object _htmlDocumentLock = new();
2728

2829
private RazorCodeDocument(
2930
RazorSourceDocument source,
@@ -182,8 +183,15 @@ internal RazorHtmlDocument GetHtmlDocument()
182183
return result;
183184
}
184185

185-
result = RazorHtmlWriter.GetHtmlDocument(this);
186-
_properties.HtmlDocument.SetValue(result);
186+
// Perf: Avoid concurrent requests generating the same html document
187+
lock (_htmlDocumentLock)
188+
{
189+
if (!_properties.HtmlDocument.TryGetValue(out result))
190+
{
191+
result = RazorHtmlWriter.GetHtmlDocument(this);
192+
_properties.HtmlDocument.SetValue(result);
193+
}
194+
}
187195

188196
return result;
189197
}

src/Razor/src/Microsoft.CodeAnalysis.Razor.CohostingShared/CodeActions/CohostCodeActionsEndpoint.cs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
using Microsoft.CodeAnalysis.Razor;
1717
using Microsoft.CodeAnalysis.Razor.CodeActions;
1818
using Microsoft.CodeAnalysis.Razor.CodeActions.Models;
19+
using Microsoft.CodeAnalysis.Razor.Cohost;
1920
using Microsoft.CodeAnalysis.Razor.Protocol;
2021
using Microsoft.CodeAnalysis.Razor.Protocol.CodeActions;
2122
using Microsoft.CodeAnalysis.Razor.Remote;
@@ -31,11 +32,12 @@ namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
3132
[method: ImportingConstructor]
3233
#pragma warning restore RS0030 // Do not use banned APIs
3334
internal sealed class CohostCodeActionsEndpoint(
35+
IIncompatibleProjectService incompatibleProjectService,
3436
IRemoteServiceInvoker remoteServiceInvoker,
3537
IClientCapabilitiesService clientCapabilitiesService,
3638
IHtmlRequestInvoker requestInvoker,
3739
ITelemetryReporter telemetryReporter)
38-
: AbstractRazorCohostDocumentRequestHandler<VSCodeActionParams, SumType<Command, CodeAction>[]?>, IDynamicRegistrationProvider
40+
: AbstractCohostDocumentEndpoint<VSCodeActionParams, SumType<Command, CodeAction>[]?>(incompatibleProjectService), IDynamicRegistrationProvider
3941
{
4042
private readonly IRemoteServiceInvoker _remoteServiceInvoker = remoteServiceInvoker;
4143
private readonly IClientCapabilitiesService _clientCapabilitiesService = clientCapabilitiesService;
@@ -63,10 +65,7 @@ public ImmutableArray<Registration> GetRegistrations(VSInternalClientCapabilitie
6365
protected override RazorTextDocumentIdentifier? GetRazorTextDocumentIdentifier(VSCodeActionParams request)
6466
=> request.TextDocument.ToRazorTextDocumentIdentifier();
6567

66-
protected override Task<SumType<Command, CodeAction>[]?> HandleRequestAsync(VSCodeActionParams request, RazorCohostRequestContext context, CancellationToken cancellationToken)
67-
=> HandleRequestAsync(context.TextDocument.AssumeNotNull(), request, cancellationToken);
68-
69-
private async Task<SumType<Command, CodeAction>[]?> HandleRequestAsync(TextDocument razorDocument, VSCodeActionParams request, CancellationToken cancellationToken)
68+
protected override async Task<SumType<Command, CodeAction>[]?> HandleRequestAsync(VSCodeActionParams request, TextDocument razorDocument, CancellationToken cancellationToken)
7069
{
7170
var correlationId = Guid.NewGuid();
7271
using var _ = _telemetryReporter.TrackLspRequest(Methods.TextDocumentCodeActionName, LanguageServerConstants.RazorLanguageServerName, TelemetryThresholds.CodeActionRazorTelemetryThreshold, correlationId);
@@ -144,6 +143,6 @@ private async Task<RazorVSInternalCodeAction[]> GetHtmlCodeActionsAsync(TextDocu
144143
internal readonly struct TestAccessor(CohostCodeActionsEndpoint instance)
145144
{
146145
public Task<SumType<Command, CodeAction>[]?> HandleRequestAsync(TextDocument razorDocument, VSCodeActionParams request, CancellationToken cancellationToken)
147-
=> instance.HandleRequestAsync(razorDocument, request, cancellationToken);
146+
=> instance.HandleRequestAsync(request, razorDocument, cancellationToken);
148147
}
149148
}

src/Razor/src/Microsoft.CodeAnalysis.Razor.CohostingShared/CodeActions/CohostCodeActionsResolveEndpoint.cs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Features;
1414
using Microsoft.CodeAnalysis.Razor.CodeActions;
1515
using Microsoft.CodeAnalysis.Razor.CodeActions.Models;
16+
using Microsoft.CodeAnalysis.Razor.Cohost;
1617
using Microsoft.CodeAnalysis.Razor.Formatting;
1718
using Microsoft.CodeAnalysis.Razor.Protocol;
1819
using Microsoft.CodeAnalysis.Razor.Remote;
@@ -33,11 +34,12 @@ namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
3334
[method: ImportingConstructor]
3435
#pragma warning restore RS0030 // Do not use banned APIs
3536
internal sealed class CohostCodeActionsResolveEndpoint(
37+
IIncompatibleProjectService incompatibleProjectService,
3638
IRemoteServiceInvoker remoteServiceInvoker,
3739
IClientCapabilitiesService clientCapabilitiesService,
3840
IClientSettingsManager clientSettingsManager,
3941
IHtmlRequestInvoker requestInvoker)
40-
: AbstractRazorCohostDocumentRequestHandler<CodeAction, CodeAction?>, IDynamicRegistrationProvider
42+
: AbstractCohostDocumentEndpoint<CodeAction, CodeAction?>(incompatibleProjectService), IDynamicRegistrationProvider
4143
{
4244
private readonly IRemoteServiceInvoker _remoteServiceInvoker = remoteServiceInvoker;
4345
private readonly IClientCapabilitiesService _clientCapabilitiesService = clientCapabilitiesService;
@@ -68,10 +70,7 @@ public ImmutableArray<Registration> GetRegistrations(VSInternalClientCapabilitie
6870
return resolveParams.TextDocument.ToRazorTextDocumentIdentifier();
6971
}
7072

71-
protected override Task<CodeAction?> HandleRequestAsync(CodeAction request, RazorCohostRequestContext context, CancellationToken cancellationToken)
72-
=> HandleRequestAsync(context.TextDocument.AssumeNotNull(), request, cancellationToken);
73-
74-
private async Task<CodeAction?> HandleRequestAsync(TextDocument razorDocument, CodeAction request, CancellationToken cancellationToken)
73+
protected override async Task<CodeAction?> HandleRequestAsync(CodeAction request, TextDocument razorDocument, CancellationToken cancellationToken)
7574
{
7675
var resolveParams = CodeActionResolveService.GetRazorCodeActionResolutionParams(request);
7776

@@ -152,6 +151,6 @@ private async Task<CodeAction> ResolvedHtmlCodeActionAsync(TextDocument razorDoc
152151
internal readonly struct TestAccessor(CohostCodeActionsResolveEndpoint instance)
153152
{
154153
public Task<CodeAction?> HandleRequestAsync(TextDocument razorDocument, CodeAction request, CancellationToken cancellationToken)
155-
=> instance.HandleRequestAsync(razorDocument, request, cancellationToken);
154+
=> instance.HandleRequestAsync(request, razorDocument, cancellationToken);
156155
}
157156
}

src/Razor/src/Microsoft.CodeAnalysis.Razor.CohostingShared/CohostDocSyncEndpointRegistration.cs

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// The .NET Foundation licenses this file to you under the MIT license.
33

44
using System.Collections.Immutable;
5-
using System.Composition;
5+
using System.ComponentModel.Composition;
66
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Cohost;
77

88
namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
@@ -11,10 +11,7 @@ namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
1111
/// This class provides dynamic registration for Razor files, for LSP methods where the endpoint implementation
1212
/// is provided by Roslyn
1313
/// </summary>
14-
#pragma warning disable RS0030 // Do not use banned APIs
15-
[Shared]
1614
[Export(typeof(IDynamicRegistrationProvider))]
17-
#pragma warning restore RS0030 // Do not use banned APIs
1815
internal sealed class CohostDocSyncEndpointRegistration : IDynamicRegistrationProvider
1916
{
2017
public ImmutableArray<Registration> GetRegistrations(VSInternalClientCapabilities clientCapabilities, RazorCohostRequestContext requestContext)

src/Razor/src/Microsoft.CodeAnalysis.Razor.CohostingShared/Completion/CohostDocumentCompletionEndpoint.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
using Microsoft.CodeAnalysis;
1313
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Cohost;
1414
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Features;
15+
using Microsoft.CodeAnalysis.Razor.Cohost;
1516
using Microsoft.CodeAnalysis.Razor.Completion;
1617
using Microsoft.CodeAnalysis.Razor.Completion.Delegation;
1718
using Microsoft.CodeAnalysis.Razor.Logging;
@@ -33,6 +34,7 @@ namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
3334
[method: ImportingConstructor]
3435
#pragma warning restore RS0030 // Do not use banned APIs
3536
internal sealed class CohostDocumentCompletionEndpoint(
37+
IIncompatibleProjectService incompatibleProjectService,
3638
IRemoteServiceInvoker remoteServiceInvoker,
3739
IClientSettingsManager clientSettingsManager,
3840
IClientCapabilitiesService clientCapabilitiesService,
@@ -44,7 +46,7 @@ internal sealed class CohostDocumentCompletionEndpoint(
4446
CompletionListCache completionListCache,
4547
ITelemetryReporter telemetryReporter,
4648
ILoggerFactory loggerFactory)
47-
: AbstractRazorCohostDocumentRequestHandler<CompletionParams, RazorVSInternalCompletionList?>, IDynamicRegistrationProvider
49+
: AbstractCohostDocumentEndpoint<CompletionParams, RazorVSInternalCompletionList?>(incompatibleProjectService), IDynamicRegistrationProvider
4850
{
4951
private readonly IRemoteServiceInvoker _remoteServiceInvoker = remoteServiceInvoker;
5052
private readonly IClientSettingsManager _clientSettingsManager = clientSettingsManager;
@@ -82,10 +84,7 @@ public ImmutableArray<Registration> GetRegistrations(VSInternalClientCapabilitie
8284
protected override RazorTextDocumentIdentifier? GetRazorTextDocumentIdentifier(CompletionParams request)
8385
=> request.TextDocument?.ToRazorTextDocumentIdentifier();
8486

85-
protected override Task<RazorVSInternalCompletionList?> HandleRequestAsync(CompletionParams request, RazorCohostRequestContext context, CancellationToken cancellationToken)
86-
=> HandleRequestAsync(request, context.TextDocument.AssumeNotNull(), cancellationToken);
87-
88-
private async Task<RazorVSInternalCompletionList?> HandleRequestAsync(CompletionParams request, TextDocument razorDocument, CancellationToken cancellationToken)
87+
protected override async Task<RazorVSInternalCompletionList?> HandleRequestAsync(CompletionParams request, TextDocument razorDocument, CancellationToken cancellationToken)
8988
{
9089
if (request.Context is null ||
9190
JsonHelpers.Convert<CompletionContext, VSInternalCompletionContext>(request.Context) is not { } completionContext)

src/Razor/src/Microsoft.CodeAnalysis.Razor.CohostingShared/Completion/CohostDocumentCompletionResolveEndpoint.cs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
using System.Diagnostics;
77
using System.Threading;
88
using System.Threading.Tasks;
9-
using Microsoft.AspNetCore.Razor;
109
using Microsoft.CodeAnalysis;
1110
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Cohost;
1211
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Features;
12+
using Microsoft.CodeAnalysis.Razor.Cohost;
1313
using Microsoft.CodeAnalysis.Razor.Completion;
1414
using Microsoft.CodeAnalysis.Razor.Completion.Delegation;
1515
using Microsoft.CodeAnalysis.Razor.Formatting;
@@ -33,12 +33,13 @@ namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
3333
[method: ImportingConstructor]
3434
#pragma warning restore RS0030 // Do not use banned APIs
3535
internal sealed class CohostDocumentCompletionResolveEndpoint(
36+
IIncompatibleProjectService incompatibleProjectService,
3637
CompletionListCache completionListCache,
3738
IRemoteServiceInvoker remoteServiceInvoker,
3839
IClientSettingsManager clientSettingsManager,
3940
IHtmlRequestInvoker requestInvoker,
4041
ILoggerFactory loggerFactory)
41-
: AbstractRazorCohostDocumentRequestHandler<VSInternalCompletionItem, VSInternalCompletionItem?>, IDynamicRegistrationProvider
42+
: AbstractCohostDocumentEndpoint<VSInternalCompletionItem, VSInternalCompletionItem?>(incompatibleProjectService), IDynamicRegistrationProvider
4243
{
4344
private readonly CompletionListCache _completionListCache = completionListCache;
4445
private readonly IRemoteServiceInvoker _remoteServiceInvoker = remoteServiceInvoker;
@@ -77,10 +78,7 @@ public ImmutableArray<Registration> GetRegistrations(VSInternalClientCapabilitie
7778
return null;
7879
}
7980

80-
protected override Task<VSInternalCompletionItem?> HandleRequestAsync(VSInternalCompletionItem request, RazorCohostRequestContext context, CancellationToken cancellationToken)
81-
=> HandleRequestAsync(request, context.TextDocument.AssumeNotNull(), cancellationToken);
82-
83-
private async Task<VSInternalCompletionItem?> HandleRequestAsync(
81+
protected override async Task<VSInternalCompletionItem?> HandleRequestAsync(
8482
VSInternalCompletionItem completionItem,
8583
TextDocument razorDocument,
8684
CancellationToken cancellationToken)

src/Razor/src/Microsoft.CodeAnalysis.Razor.CohostingShared/Diagnostics/CohostDocumentPullDiagnosticsEndpointBase.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
using Microsoft.AspNetCore.Razor.Threading;
1111
using Microsoft.CodeAnalysis;
1212
using Microsoft.CodeAnalysis.ExternalAccess.Razor;
13-
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Cohost;
13+
using Microsoft.CodeAnalysis.Razor.Cohost;
1414
using Microsoft.CodeAnalysis.Razor.Logging;
1515
using Microsoft.CodeAnalysis.Razor.Protocol;
1616
using Microsoft.CodeAnalysis.Razor.Remote;
@@ -20,12 +20,13 @@
2020
namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
2121

2222
internal abstract class CohostDocumentPullDiagnosticsEndpointBase<TRequest, TResponse>(
23+
IIncompatibleProjectService incompatibleProjectService,
2324
IRemoteServiceInvoker remoteServiceInvoker,
2425
IHtmlRequestInvoker requestInvoker,
2526
IClientCapabilitiesService clientCapabilitiesService,
2627
ITelemetryReporter telemetryReporter,
2728
ILoggerFactory loggerFactory)
28-
: AbstractRazorCohostDocumentRequestHandler<TRequest, TResponse>
29+
: AbstractCohostDocumentEndpoint<TRequest, TResponse>(incompatibleProjectService)
2930
where TRequest : notnull
3031
{
3132
private readonly IRemoteServiceInvoker _remoteServiceInvoker = remoteServiceInvoker;

src/Razor/src/Microsoft.CodeAnalysis.Razor.CohostingShared/DocumentColor/CohostColorPresentationEndpoint.cs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,10 @@
44
using System.Composition;
55
using System.Threading;
66
using System.Threading.Tasks;
7-
using Microsoft.AspNetCore.Razor;
87
using Microsoft.CodeAnalysis;
98
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Cohost;
109
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Features;
10+
using Microsoft.CodeAnalysis.Razor.Cohost;
1111

1212
namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
1313

@@ -18,8 +18,9 @@ namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
1818
[method: ImportingConstructor]
1919
#pragma warning restore RS0030 // Do not use banned APIs
2020
internal sealed class CohostColorPresentationEndpoint(
21+
IIncompatibleProjectService incompatibleProjectService,
2122
IHtmlRequestInvoker requestInvoker)
22-
: AbstractRazorCohostDocumentRequestHandler<ColorPresentationParams, ColorPresentation[]?>
23+
: AbstractCohostDocumentEndpoint<ColorPresentationParams, ColorPresentation[]?>(incompatibleProjectService)
2324
{
2425
private readonly IHtmlRequestInvoker _requestInvoker = requestInvoker;
2526

@@ -30,10 +31,7 @@ internal sealed class CohostColorPresentationEndpoint(
3031
protected override RazorTextDocumentIdentifier? GetRazorTextDocumentIdentifier(ColorPresentationParams request)
3132
=> request.TextDocument.ToRazorTextDocumentIdentifier();
3233

33-
protected override Task<ColorPresentation[]?> HandleRequestAsync(ColorPresentationParams request, RazorCohostRequestContext context, CancellationToken cancellationToken)
34-
=> HandleRequestAsync(request, context.TextDocument.AssumeNotNull(), cancellationToken);
35-
36-
private async Task<ColorPresentation[]?> HandleRequestAsync(ColorPresentationParams request, TextDocument razorDocument, CancellationToken cancellationToken)
34+
protected override async Task<ColorPresentation[]?> HandleRequestAsync(ColorPresentationParams request, TextDocument razorDocument, CancellationToken cancellationToken)
3735
{
3836
return await _requestInvoker.MakeHtmlLspRequestAsync<ColorPresentationParams, ColorPresentation[]>(
3937
razorDocument,

src/Razor/src/Microsoft.CodeAnalysis.Razor.CohostingShared/DocumentColor/CohostDocumentColorEndpoint.cs

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55
using System.Composition;
66
using System.Threading;
77
using System.Threading.Tasks;
8-
using Microsoft.AspNetCore.Razor;
98
using Microsoft.CodeAnalysis;
109
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Cohost;
1110
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Features;
11+
using Microsoft.CodeAnalysis.Razor.Cohost;
1212

1313
namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
1414

@@ -20,8 +20,9 @@ namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
2020
[method: ImportingConstructor]
2121
#pragma warning restore RS0030 // Do not use banned APIs
2222
internal sealed class CohostDocumentColorEndpoint(
23+
IIncompatibleProjectService incompatibleProjectService,
2324
IHtmlRequestInvoker requestInvoker)
24-
: AbstractRazorCohostDocumentRequestHandler<DocumentColorParams, ColorInformation[]?>, IDynamicRegistrationProvider
25+
: AbstractCohostDocumentEndpoint<DocumentColorParams, ColorInformation[]?>(incompatibleProjectService), IDynamicRegistrationProvider
2526
{
2627
private readonly IHtmlRequestInvoker _requestInvoker = requestInvoker;
2728

@@ -41,12 +42,10 @@ public ImmutableArray<Registration> GetRegistrations(VSInternalClientCapabilitie
4142
protected override RazorTextDocumentIdentifier? GetRazorTextDocumentIdentifier(DocumentColorParams request)
4243
=> request.TextDocument.ToRazorTextDocumentIdentifier();
4344

44-
protected override Task<ColorInformation[]?> HandleRequestAsync(DocumentColorParams request, RazorCohostRequestContext context, CancellationToken cancellationToken)
45-
=> HandleRequestAsync(request, context.TextDocument.AssumeNotNull(), cancellationToken);
46-
47-
private async Task<ColorInformation[]?> HandleRequestAsync(DocumentColorParams request, TextDocument razorDocument, CancellationToken cancellationToken)
45+
protected override async Task<ColorInformation[]?> HandleRequestAsync(DocumentColorParams request, TextDocument razorDocument, CancellationToken cancellationToken)
4846
{
49-
return await _requestInvoker.MakeHtmlLspRequestAsync<DocumentColorParams, ColorInformation[]>(
47+
return await _requestInvoker.MakeHtmlLspRequestAsync<DocumentColorParams, ColorInformation[]>
48+
(
5049
razorDocument,
5150
Methods.TextDocumentDocumentColorName,
5251
request,

src/Razor/src/Microsoft.CodeAnalysis.Razor.CohostingShared/DocumentHighlight/CohostDocumentHighlightEndpoint.cs

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,10 @@
66
using System.Linq;
77
using System.Threading;
88
using System.Threading.Tasks;
9-
using Microsoft.AspNetCore.Razor;
109
using Microsoft.CodeAnalysis;
1110
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Cohost;
1211
using Microsoft.CodeAnalysis.ExternalAccess.Razor.Features;
12+
using Microsoft.CodeAnalysis.Razor.Cohost;
1313
using Microsoft.CodeAnalysis.Razor.Protocol.DocumentHighlight;
1414
using Microsoft.CodeAnalysis.Razor.Remote;
1515
using Microsoft.CodeAnalysis.Razor.Workspaces;
@@ -24,9 +24,10 @@ namespace Microsoft.VisualStudio.Razor.LanguageClient.Cohost;
2424
[method: ImportingConstructor]
2525
#pragma warning restore RS0030 // Do not use banned APIs
2626
internal sealed class CohostDocumentHighlightEndpoint(
27+
IIncompatibleProjectService incompatibleProjectService,
2728
IRemoteServiceInvoker remoteServiceInvoker,
2829
IHtmlRequestInvoker requestInvoker)
29-
: AbstractRazorCohostDocumentRequestHandler<DocumentHighlightParams, DocumentHighlight[]?>, IDynamicRegistrationProvider
30+
: AbstractCohostDocumentEndpoint<DocumentHighlightParams, DocumentHighlight[]?>(incompatibleProjectService), IDynamicRegistrationProvider
3031
{
3132
private readonly IRemoteServiceInvoker _remoteServiceInvoker = remoteServiceInvoker;
3233
private readonly IHtmlRequestInvoker _requestInvoker = requestInvoker;
@@ -52,10 +53,7 @@ public ImmutableArray<Registration> GetRegistrations(VSInternalClientCapabilitie
5253
protected override RazorTextDocumentIdentifier? GetRazorTextDocumentIdentifier(DocumentHighlightParams request)
5354
=> request.TextDocument.ToRazorTextDocumentIdentifier();
5455

55-
protected override Task<DocumentHighlight[]?> HandleRequestAsync(DocumentHighlightParams request, RazorCohostRequestContext context, CancellationToken cancellationToken)
56-
=> HandleRequestAsync(request, context.TextDocument.AssumeNotNull(), cancellationToken);
57-
58-
private async Task<DocumentHighlight[]?> HandleRequestAsync(DocumentHighlightParams request, TextDocument razorDocument, CancellationToken cancellationToken)
56+
protected override async Task<DocumentHighlight[]?> HandleRequestAsync(DocumentHighlightParams request, TextDocument razorDocument, CancellationToken cancellationToken)
5957
{
6058
var csharpResult = await _remoteServiceInvoker.TryInvokeAsync<IRemoteDocumentHighlightService, RemoteResponse<RemoteDocumentHighlight[]?>>(
6159
razorDocument.Project.Solution,

0 commit comments

Comments
 (0)