Exemplo n.º 1
0
        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,
            };

            var documentMappingResponse = await _requestInvoker.ReinvokeRequestOnServerAsync <RazorMapToDocumentRangesParams, RazorMapToDocumentRangesResponse>(
                LanguageServerConstants.RazorMapToDocumentRangesEndpoint,
                RazorLSPConstants.RazorLSPContentTypeName,
                mapToDocumentRangeParams,
                cancellationToken).ConfigureAwait(false);

            return(documentMappingResponse);
        }
Exemplo n.º 2
0
 public override Task <RazorMapToDocumentRangesResponse> MapToDocumentRangesAsync(
     RazorLanguageKind languageKind,
     Uri razorDocumentUri,
     Range[] projectedRanges,
     LanguageServerMappingBehavior mappingBehavior,
     CancellationToken cancellationToken)
 {
     _mappings.TryGetValue(projectedRanges[0], out var response);
     return(Task.FromResult(response));
 }
        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);
        }
 public abstract Task <RazorMapToDocumentRangesResponse> MapToDocumentRangesAsync(RazorLanguageKind languageKind, Uri razorDocumentUri, Range[] projectedRanges, LanguageServerMappingBehavior mappingBehavior, CancellationToken cancellationToken);
 public override Task <RazorMapToDocumentRangesResponse> MapToDocumentRangesAsync(RazorLanguageKind languageKind, Uri razorDocumentUri, LanguageServer.Protocol.Range[] projectedRanges, LanguageServerMappingBehavior mappingBehavior, CancellationToken cancellationToken) => throw new NotImplementedException();