Handler\IDocumentChangeTracker.cs (6)
20ValueTask StartTrackingAsync(DocumentUri documentUri, SourceText initialText, string languageId, CancellationToken cancellationToken);
21void UpdateTrackedDocument(DocumentUri documentUri, SourceText text);
22ValueTask StopTrackingAsync(DocumentUri documentUri, CancellationToken cancellationToken);
27public ValueTask StartTrackingAsync(DocumentUri documentUri, SourceText initialText, string languageId, CancellationToken cancellationToken)
32public ValueTask StopTrackingAsync(DocumentUri documentUri, CancellationToken cancellationToken)
37public void UpdateTrackedDocument(DocumentUri documentUri, SourceText text)
Handler\RequestContext.cs (7)
45private readonly ImmutableDictionary<DocumentUri, (SourceText Text, string LanguageId)> _trackedDocuments;
174ImmutableDictionary<DocumentUri, (SourceText Text, string LanguageId)> trackedDocuments,
302public ValueTask StartTrackingAsync(DocumentUri uri, SourceText initialText, string languageId, CancellationToken cancellationToken)
309public void UpdateTrackedDocument(DocumentUri uri, SourceText changedText)
312public SourceText GetTrackedDocumentSourceText(DocumentUri documentUri)
322public ValueTask StopTrackingAsync(DocumentUri uri, CancellationToken cancellationToken)
325public bool IsTracking(DocumentUri documentUri)
Workspaces\LspWorkspaceManager.cs (16)
65private ImmutableDictionary<DocumentUri, (SourceText Text, string LanguageId)> _trackedDocuments = ImmutableDictionary<DocumentUri, (SourceText SourceText, string LanguageId)>.Empty;
92private static async ValueTask ApplyChangeToMutatingWorkspaceAsync(Workspace workspace, DocumentUri uri, Func<ILspWorkspace, DocumentId, ValueTask> change)
106public async ValueTask StartTrackingAsync(DocumentUri uri, SourceText documentText, string languageId, CancellationToken cancellationToken)
130async ValueTask TryOpenDocumentsInMutatingWorkspaceAsync(DocumentUri uri)
146public async ValueTask StopTrackingAsync(DocumentUri uri, CancellationToken cancellationToken)
175async ValueTask TryCloseDocumentsInMutatingWorkspaceAsync(DocumentUri uri)
200public void UpdateTrackedDocument(DocumentUri uri, SourceText newSourceText)
213public ImmutableDictionary<DocumentUri, (SourceText SourceText, string LanguageId)> GetTrackedLspText() => _trackedDocuments;
247var uri = textDocumentIdentifier.DocumentUri;
509private async Task<bool> DoesAllTextMatchWorkspaceSolutionAsync(ImmutableDictionary<DocumentUri, ImmutableArray<TextDocument>> documentsInWorkspace, CancellationToken cancellationToken)
541internal bool TryGetLanguageForUri(DocumentUri uri, [NotNullWhen(true)] out string? language)
562private static ImmutableDictionary<DocumentUri, ImmutableArray<TextDocument>> GetDocumentsForUris(ImmutableArray<DocumentUri> trackedDocuments, Solution workspaceCurrentSolution)
564using var _ = PooledDictionary<DocumentUri, ImmutableArray<TextDocument>>.GetInstance(out var documentsInSolution);
565foreach (var trackedDoc in trackedDocuments)