public async override Task<RazorMapToDocumentRangesResponse> MapToDocumentRangesAsync(RazorLanguageKind languageKind, Uri razorDocumentUri, Range[] projectedRanges, CancellationToken cancellationToken) { if (razorDocumentUri is null) { throw new ArgumentNullException(nameof(razorDocumentUri)); } if (projectedRanges is null) { throw new ArgumentNullException(nameof(projectedRanges)); } var mapToDocumentRangeParams = new RazorMapToDocumentRangesParams() { Kind = languageKind, RazorDocumentUri = razorDocumentUri, ProjectedRanges = projectedRanges }; var documentMappingResponse = await _requestInvoker.ReinvokeRequestOnServerAsync<RazorMapToDocumentRangesParams, RazorMapToDocumentRangesResponse>( LanguageServerConstants.RazorMapToDocumentRangesEndpoint, RazorLSPConstants.RazorLSPContentTypeName, mapToDocumentRangeParams, cancellationToken).ConfigureAwait(false); return documentMappingResponse; }
public async override Task <RazorMapToDocumentRangesResponse?> MapToDocumentRangesAsync( RazorLanguageKind languageKind, Uri razorDocumentUri, Range[] projectedRanges, LanguageServerMappingBehavior mappingBehavior, CancellationToken cancellationToken) { if (razorDocumentUri is null) { throw new ArgumentNullException(nameof(razorDocumentUri)); } if (projectedRanges is null) { throw new ArgumentNullException(nameof(projectedRanges)); } var mapToDocumentRangeParams = new RazorMapToDocumentRangesParams() { Kind = languageKind, RazorDocumentUri = razorDocumentUri, ProjectedRanges = projectedRanges, MappingBehavior = mappingBehavior, }; if (!_lazyDocumentManager.Value.TryGetDocument(razorDocumentUri, out var documentSnapshot)) { return(null); } var documentMappingResponse = await _requestInvoker.ReinvokeRequestOnServerAsync <RazorMapToDocumentRangesParams, RazorMapToDocumentRangesResponse>( documentSnapshot.Snapshot.TextBuffer, LanguageServerConstants.RazorMapToDocumentRangesEndpoint, RazorLSPConstants.RazorLanguageServerName, CheckRazorRangeMappingCapability, mapToDocumentRangeParams, cancellationToken).ConfigureAwait(false); return(documentMappingResponse?.Response); }