Host\AssetProvider.cs (28)
23Checksum solutionChecksum,
30private static readonly ObjectPool<Checksum[]> s_checksumPool = new(() => new Checksum[PooledChecksumArraySize], 16);
32private readonly Checksum _solutionChecksum = solutionChecksum;
38AssetPath assetPath, Checksum checksum, CancellationToken cancellationToken)
40Contract.ThrowIfTrue(checksum == Checksum.Null);
44using var _1 = PooledHashSet<Checksum>.GetInstance(out var checksums);
59AssetPath assetPath, HashSet<Checksum> checksums, Action<Checksum, T, TArg>? callback, TArg? arg, CancellationToken cancellationToken) where TArg : default
68public async ValueTask SynchronizeSolutionAssetsAsync(Checksum solutionChecksum, CancellationToken cancellationToken)
81using (Logger.LogBlock(FunctionId.AssetService_SynchronizeSolutionAssetsAsync, Checksum.GetChecksumLogInfo, solutionChecksum, cancellationToken))
219Task SynchronizeProjectAssetAsync<TAsset>(AssetPath assetPath, Func<ProjectStateChecksums, Checksum> getChecksum)
220=> SynchronizeProjectAssetOrCollectionAsync<TAsset, Func<ProjectStateChecksums, Checksum>>(
232AssetPath assetPath, Action<ProjectStateChecksums, HashSet<Checksum>, TArg> addAllChecksums, TArg arg)
235using var _ = PooledHashSet<Checksum>.GetInstance(out var checksums);
245AssetPath assetPath, HashSet<Checksum> checksums, Action<Checksum, T, TArg>? callback, TArg? arg, CancellationToken cancellationToken)
247Contract.ThrowIfTrue(checksums.Contains(Checksum.Null));
251using (Logger.LogBlock(FunctionId.AssetService_SynchronizeAssetsAsync, Checksum.GetChecksumsLogInfo, checksums, cancellationToken))
256foreach (var checksum in checksums)
263var missingChecksums = usePool ? s_checksumPool.Allocate() : new Checksum[missingChecksumsCount];
268foreach (var checksum in checksums)
279var newMissingChecksums = new Checksum[missingChecksumsCount * 2];
298var missingChecksumsMemory = new ReadOnlyMemory<Checksum>(missingChecksums, 0, missingChecksumsCount);
302Contract.ThrowIfTrue(missingChecksumsMemory.Span.Contains(Checksum.Null));
311Checksum missingChecksum,
313(AssetProvider assetProvider, Checksum[] missingChecksums, Action<Checksum, T, TArg>? callback, TArg? arg) tuple) =>
Host\RemoteWorkspace.SolutionCreator.cs (24)
35public async Task<Solution> CreateSolutionAsync(Checksum newSolutionChecksum, CancellationToken cancellationToken)
95var frozenDocumentTextChecksum = newSolutionFrozenSourceGeneratedDocuments.TextChecksums[i];
96var frozenDocumentIdentity = newSolutionFrozenSourceGeneratedDocumentIdentities[i];
153using var _1 = PooledDictionary<ProjectId, Checksum>.GetInstance(out var oldProjectIdToChecksum);
154using var _2 = PooledDictionary<ProjectId, Checksum>.GetInstance(out var newProjectIdToChecksum);
166if (newProjectIdToChecksum.TryGetValue(projectId, out var newChecksum) &&
211using var _5 = PooledHashSet<Checksum>.GetInstance(out var newChecksumsToSync);
243using var _ = PooledHashSet<Checksum>.GetInstance(out var projectItemChecksums);
433using var _1 = PooledDictionary<DocumentId, (Checksum attributeChecksum, Checksum textChecksum)>.GetInstance(out var oldDocumentIdToChecksums);
434using var _2 = PooledDictionary<DocumentId, (Checksum attributeChecksum, Checksum textChecksum)>.GetInstance(out var newDocumentIdToChecksums);
457using var _5 = PooledHashSet<Checksum>.GetInstance(out var newChecksumsToSync);
476Dictionary<DocumentId, (Checksum attributeChecksum, Checksum textChecksum)> oldDocumentIdToStateChecksums,
477Dictionary<DocumentId, (Checksum attributeChecksum, Checksum textChecksum)> newDocumentIdToStateChecksums,
538(Checksum attributeChecksum, Checksum textChecksum) oldDocumentChecksums,
539(Checksum attributeChecksum, Checksum textChecksum) newDocumentChecksums,
568private async Task<TextDocument> UpdateDocumentInfoAsync(TextDocument document, Checksum infoChecksum, CancellationToken cancellationToken)
603Checksum checksumFromRequest,
614var currentSolutionChecksum = projectConeId == null
Host\TestUtils.cs (37)
23public static void RemoveChecksums(this Dictionary<Checksum, object> map, ChecksumCollection checksums)
25var set = new HashSet<Checksum>();
31public static void RemoveChecksums(this Dictionary<Checksum, object> map, IEnumerable<Checksum> checksums)
33foreach (var checksum in checksums)
41Checksum checksumFromRequest,
85static void AppendMismatch(List<KeyValuePair<Checksum, object>> items, string title, StringBuilder stringBuilder)
101async Task<List<KeyValuePair<Checksum, object>>> GetAssetFromAssetServiceAsync(IEnumerable<Checksum> checksums)
103var items = new List<KeyValuePair<Checksum, object>>();
105foreach (var checksum in checksums)
114async Task<HashSet<Checksum>> GetAllChildrenChecksumsAsync(Checksum solutionChecksum)
116var set = new HashSet<Checksum>();
147private static void AddAllTo(DocumentStateChecksums documentStateChecksums, HashSet<Checksum> checksums)
158public static async Task<Dictionary<Checksum, object>> GetAssetMapAsync(this Solution solution, ProjectId? projectConeId, CancellationToken cancellationToken)
160var map = new Dictionary<Checksum, object>();
169public static async Task<Dictionary<Checksum, object>> GetAssetMapAsync(this Project project, CancellationToken cancellationToken)
171var map = new Dictionary<Checksum, object>();
182public static Task AppendAssetMapAsync(this Solution solution, Dictionary<Checksum, object> map, CancellationToken cancellationToken)
186this Solution solution, Dictionary<Checksum, object> map, ProjectId? projectId, CancellationToken cancellationToken)
188var callback = static (Checksum checksum, object asset, Dictionary<Checksum, object> map) => { map[checksum] = asset; };
224private static async Task AppendAssetMapAsync(this Project project, Dictionary<Checksum, object> map, CancellationToken cancellationToken)
231var callback = static (Checksum checksum, object asset, Dictionary<Checksum, object> map) => { map[checksum] = asset; };
243private static HashSet<Checksum> Flatten(SolutionCompilationStateChecksums checksums)
245var set = new HashSet<Checksum>();
250private static HashSet<Checksum> Flatten(SolutionStateChecksums checksums)
252var set = new HashSet<Checksum>();
257private static HashSet<Checksum> Flatten(ProjectStateChecksums checksums)
259var set = new HashSet<Checksum>();
264private static HashSet<Checksum> Flatten(DocumentStateChecksums checksums)
266var set = new HashSet<Checksum>();
271public static void AppendChecksums(this HashSet<Checksum> set, ChecksumCollection checksums)
275foreach (var child in checksums.Children)
277if (child != Checksum.Null)
Services\CodeLensReferences\RemoteCodeLensReferencesService.cs (4)
43public async ValueTask<ReferenceCount?> GetReferenceCountAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan textSpan, int maxResultCount, CancellationToken cancellationToken)
66public async ValueTask<ImmutableArray<ReferenceLocationDescriptorAndDocument>?> FindReferenceLocationsAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan textSpan, CancellationToken cancellationToken)
84public async ValueTask<ImmutableArray<ReferenceMethodDescriptor>?> FindReferenceMethodsAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan textSpan, CancellationToken cancellationToken)
102public ValueTask<string?> GetFullyQualifiedNameAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan textSpan, CancellationToken cancellationToken)
Services\DiagnosticAnalyzer\RemoteDiagnosticAnalyzerService.cs (10)
29Checksum solutionChecksum, ProjectId projectId, CancellationToken cancellationToken)
44Checksum solutionChecksum, ProjectId projectId, ImmutableArray<string> diagnosticIds, CancellationToken cancellationToken)
60Checksum solutionChecksum, ProjectId projectId,
82Checksum solutionChecksum, ProjectId projectId,
100public ValueTask<ImmutableArray<DiagnosticData>> GetSourceGeneratorDiagnosticsAsync(Checksum solutionChecksum, ProjectId projectId, CancellationToken cancellationToken)
143public ValueTask<ImmutableArray<DiagnosticDescriptorData>> GetDiagnosticDescriptorsAsync(Checksum solutionChecksum, ProjectId projectId, string analyzerReferenceFullPath, CancellationToken cancellationToken)
162Checksum solutionChecksum, CancellationToken cancellationToken)
176Checksum solutionChecksum,
199Checksum solutionChecksum,
218Checksum solutionChecksum,
Services\EditAndContinue\RemoteEditAndContinueService.cs (5)
83public ValueTask<DebuggingSessionId> StartDebuggingSessionAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, ImmutableArray<DocumentId> captureMatchingDocuments, bool captureAllMatchingDocuments, bool reportDiagnostics, CancellationToken cancellationToken)
122public ValueTask<ImmutableArray<DiagnosticData>> GetDocumentDiagnosticsAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DocumentId documentId, CancellationToken cancellationToken)
144Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DebuggingSessionId sessionId, ImmutableDictionary<ProjectId, RunningProjectOptions> runningProjects, CancellationToken cancellationToken)
188public ValueTask<ImmutableArray<ImmutableArray<ActiveStatementSpan>>> GetBaseActiveStatementSpansAsync(Checksum solutionChecksum, DebuggingSessionId sessionId, ImmutableArray<DocumentId> documentIds, CancellationToken cancellationToken)
199public ValueTask<ImmutableArray<ActiveStatementSpan>> GetAdjustedActiveStatementSpansAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DebuggingSessionId sessionId, DocumentId documentId, CancellationToken cancellationToken)
Services\SemanticClassification\RemoteSemanticClassificationService.Caching.cs (6)
49private readonly LinkedList<(DocumentId id, ClassificationType type, Checksum checksum, ImmutableArray<ClassifiedSpan> classifiedSpans)> _cachedData = new();
85DocumentKey documentKey, ImmutableArray<TextSpan> textSpans, ClassificationType type, Checksum checksum, CancellationToken cancellationToken)
224Checksum checksum,
241private bool TryGetFromInMemoryCache(DocumentKey documentKey, Checksum checksum, out ImmutableArray<ClassifiedSpan> classifiedSpans)
260Checksum checksum,
287Checksum checksum,
Services\SourceGeneration\RemoteSourceGenerationService.cs (6)
34Checksum solutionChecksum, ProjectId projectId, bool withFrozenSourceGeneratedDocuments, CancellationToken cancellationToken)
54Checksum solutionChecksum, ProjectId projectId, ImmutableArray<DocumentId> documentIds, bool withFrozenSourceGeneratedDocuments, CancellationToken cancellationToken)
89Checksum solutionChecksum,
91ImmutableArray<Checksum> analyzerReferenceChecksums,
151Checksum solutionChecksum,
167Checksum solutionChecksum,
Services\SymbolFinder\RemoteSymbolFinderService.cs (7)
35Checksum solutionChecksum,
69public ValueTask FindLiteralReferencesAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, object value, TypeCode typeCode, CancellationToken cancellationToken)
92Checksum solutionChecksum,
113Checksum solutionChecksum,
129Checksum solutionChecksum,
148Checksum solutionChecksum, string pattern, SymbolFilter criteria, CancellationToken cancellationToken)
160Checksum solutionChecksum, ProjectId projectId, string pattern, SymbolFilter criteria, CancellationToken cancellationToken)