public Task <SemanticTokens> GetTextDocumentSemanticTokensRangeAsync(SemanticTokensRangeParams semanticTokensRangeParams, CancellationToken cancellationToken) { Contract.ThrowIfNull(_clientCapabilities, $"{nameof(InitializeAsync)} has not been called."); return(RequestDispatcher.ExecuteRequestAsync <SemanticTokensRangeParams, SemanticTokens>(Queue, Methods.TextDocumentSemanticTokensRangeName, semanticTokensRangeParams, _clientCapabilities, ClientName, cancellationToken)); }
public override async Task <SemanticTokens> Handle( SemanticTokensRangeParams request, CancellationToken cancellationToken) { var result = await base.Handle(request, cancellationToken); return(result); }
public override async Task <OmniSharp.Extensions.LanguageServer.Protocol.Models.Proposals.SemanticTokens> Handle( SemanticTokensRangeParams request, CancellationToken cancellationToken) { var result = await base.Handle(request, cancellationToken); _logger.LogInformation(JsonConvert.SerializeObject(result)); return(result); }
public async Task <SemanticTokens> Handle(SemanticTokensRangeParams request, CancellationToken cancellationToken) { if (request is null) { throw new ArgumentNullException(nameof(request)); } return(await Handle(request.TextDocument.Uri.GetAbsolutePath(), cancellationToken, request.Range)); }
public static IRequestProgressObservable <SemanticTokensPartialResult, SemanticTokens> RequestSemanticTokensRange( this ITextDocumentLanguageClient mediator, SemanticTokensRangeParams @params, CancellationToken cancellationToken = default ) => mediator.ProgressManager.MonitorUntil( @params, (partial, result) => new SemanticTokens { Data = partial.Data, ResultId = result.ResultId }, cancellationToken );
public virtual async Task <SemanticTokens> Handle(SemanticTokensRangeParams request, CancellationToken cancellationToken) { var document = await GetSemanticTokensDocument(request, cancellationToken); var builder = document.Create(); await Tokenize(builder, request, cancellationToken); return(builder.Commit().GetSemanticTokens(request.Range)); }
public async Task <SemanticTokens?> Handle(SemanticTokensRangeParams request, CancellationToken cancellationToken) { if (request is null) { throw new ArgumentNullException(nameof(request)); } var semanticTokens = await HandleAsync(request.TextDocument, cancellationToken, request.Range); var amount = semanticTokens is null ? "no" : (semanticTokens.Data.Length / 5).ToString(Thread.CurrentThread.CurrentCulture); _logger.LogInformation($"Returned {amount} semantic tokens for range {request.Range} in {request.TextDocument.Uri}."); return(semanticTokens); }
public async Task <SemanticTokens?> Handle(SemanticTokensRangeParams request, CancellationToken cancellationToken) { if (request is null) { throw new ArgumentNullException(nameof(request)); } var semanticTokens = await _semanticTokensInfoService.GetSemanticTokensAsync(request.TextDocument, request.Range, cancellationToken); var amount = semanticTokens is null ? "no" : (semanticTokens.Data.Length / 5).ToString(Thread.CurrentThread.CurrentCulture); _logger.LogInformation($"Returned {amount} semantic tokens for range {request.Range} in {request.TextDocument.Uri}."); if (semanticTokens is not null) { Debug.Assert(semanticTokens.Data.Length % 5 == 0, $"Number of semantic token-ints should be divisible by 5. Actual number: {semanticTokens.Data.Length}"); Debug.Assert(semanticTokens.Data.Length == 0 || semanticTokens.Data[0] >= 0, $"Line offset should not be negative."); } return(semanticTokens); }
public Task <SemanticTokens> GetTextDocumentSemanticTokensRangeAsync(SemanticTokensRangeParams semanticTokensRangeParams, CancellationToken cancellationToken) => _requestHandlerProvider.ExecuteRequestAsync <SemanticTokensRangeParams, SemanticTokens>(_queue, SemanticTokensMethods.TextDocumentSemanticTokensRangeName, semanticTokensRangeParams, _clientCapabilities, _clientName, cancellationToken);
public static Task <SemanticTokens> SemanticTokensRange(this ILanguageClientDocument mediator, SemanticTokensRangeParams @params, CancellationToken cancellationToken) { return(mediator.SendRequest(@params, cancellationToken)); }