public async Task <QuickInfoItem> GetQuickInfoItemAsync(IAsyncQuickInfoSession session, CancellationToken cancellationToken) { var snapshot = _subjectBuffer.CurrentSnapshot; var position = session.GetTriggerPoint(snapshot); if (position.HasValue) { var document = await _documentProvider.GetDocumentAsync(snapshot, cancellationToken).ConfigureAwait(false); if (document == null) { return(null); } var quickInfoService = QuickInfoService.GetService(document); var item = await quickInfoService.GetQuickInfoAsync(document, position.Value.Position, cancellationToken).ConfigureAwait(false); if (item == null) { return(null); } var quickInfoElement = CreateElement(document, item.Content); return(new QuickInfoItem( snapshot.CreateTrackingSpan(item.TextSpan.ToSpan(), SpanTrackingMode.EdgeInclusive), quickInfoElement)); } return(null); }
public async Task <Employee> GetEmployeeAsync(string immutableId) { var result = await _repo.GetDocumentAsync(immutableId); return(result.Value); }