3 writes to _trackedDocuments
Microsoft.CodeAnalysis.LanguageServer.Protocol (3)
16 references to _trackedDocuments
Microsoft.CodeAnalysis.LanguageServer.Protocol (16)
Workspaces\LspWorkspaceManager.cs (16)
110Contract.ThrowIfTrue(_trackedDocuments.ContainsKey(uri), $"didOpen received for {uri} which is already open.");
117_trackedDocuments = _trackedDocuments.Add(uri, (documentText, languageId));
150Contract.ThrowIfFalse(_trackedDocuments.ContainsKey(uri), $"didClose received for {uri} which is not open.");
151_trackedDocuments = _trackedDocuments.Remove(uri);
204Contract.ThrowIfFalse(_trackedDocuments.ContainsKey(uri), $"didChange received for {uri} which is not open.");
205var (_, language) = _trackedDocuments[uri];
206_trackedDocuments = _trackedDocuments.SetItem(uri, (newSourceText, language));
214public ImmutableDictionary<DocumentUri, (SourceText SourceText, string LanguageId)> GetTrackedLspText() => _trackedDocuments;
292if (_trackedDocuments.TryGetValue(uri, out var trackedDocument) && _lspMiscellaneousFilesWorkspaceProvider is not null)
381var documentsInWorkspace = GetDocumentsForUris([.. _trackedDocuments.Keys], workspaceCurrentSolution);
383_trackedDocuments.Keys.Where(static trackedDocument => trackedDocument.ParsedUri?.Scheme == SourceGeneratedDocumentUri.Scheme)
385.Select(uri => (identity: SourceGeneratedDocumentUri.DeserializeIdentity(workspaceCurrentSolution, uri.ParsedUri!), _trackedDocuments[uri].Text))
414lspSolution = lspSolution.WithDocumentText(workspaceDocuments.Select(d => d.Id), _trackedDocuments[uri].Text);
430foreach (var (uri, (sourceText, _)) in _trackedDocuments)
498var isTextEquivalent = await AreChecksumsEqualAsync(firstDocument, _trackedDocuments[uriInWorkspace].Text, cancellationToken).ConfigureAwait(false);
527if (_trackedDocuments.TryGetValue(uri, out var trackedDocument))