3 instantiations of Checksum
Microsoft.CodeAnalysis.Workspaces (3)
Workspace\Solution\Checksum.cs (3)
31public static readonly Checksum Null = new(default); 62return new Checksum(hash); 126=> new(HashData.ReadFrom(reader));
875 references to Checksum
IdeCoreBenchmarks (13)
CloudCachePersistentStorage.cs (13)
27private static readonly ObjectPool<byte[]> s_byteArrayPool = new(() => new byte[Checksum.HashSize]); 91public sealed override Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CancellationToken cancellationToken) 94protected sealed override Task<bool> ChecksumMatchesAsync(ProjectKey projectKey, Project? project, string name, Checksum checksum, CancellationToken cancellationToken) 97protected sealed override Task<bool> ChecksumMatchesAsync(DocumentKey documentKey, Document? document, string name, Checksum checksum, CancellationToken cancellationToken) 100private async Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CacheContainerKey? containerKey, CancellationToken cancellationToken) 113public sealed override Task<Stream?> ReadStreamAsync(string name, Checksum? checksum, CancellationToken cancellationToken) 116protected sealed override Task<Stream?> ReadStreamAsync(ProjectKey projectKey, Project? project, string name, Checksum? checksum, CancellationToken cancellationToken) 119protected sealed override Task<Stream?> ReadStreamAsync(DocumentKey documentKey, Document? document, string name, Checksum? checksum, CancellationToken cancellationToken) 122private async Task<Stream?> ReadStreamAsync(string name, Checksum? checksum, CacheContainerKey? containerKey, CancellationToken cancellationToken) 158public sealed override Task<bool> WriteStreamAsync(string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 161protected sealed override Task<bool> WriteStreamAsync(ProjectKey projectKey, Project? project, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 164protected sealed override Task<bool> WriteStreamAsync(DocumentKey documentKey, Document? document, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 167private async Task<bool> WriteStreamAsync(string name, Stream stream, Checksum? checksum, CacheContainerKey? containerKey, CancellationToken cancellationToken)
Microsoft.CodeAnalysis.CSharp.Features (3)
Completion\CompletionProviders\ImportCompletion\ImportCompletionProviderHelper.cs (3)
19private record class CacheEntry(DocumentId? GlobalUsingsDocumentId, Checksum GlobalUsingsDocumentChecksum, ImmutableArray<string> GlobalUsings) 21public static CacheEntry Default { get; } = new(null, Checksum.Null, ImmutableArray<string>.Empty); 65var checksum = await globalUsingDocument.State.GetChecksumAsync(cancellationToken).ConfigureAwait(false);
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (7)
Diagnostics\DiagnosticAnalyzerServiceTests.cs (3)
1068document, project, Checksum.Null, ideAnalyzerOptions, span: null, analyzerIdsToRequestDiagnostics, 1123_ = await DiagnosticComputer.GetDiagnosticsAsync(document, project, Checksum.Null, ideAnalyzerOptions, span: null, 1136var diagnosticsMap = await DiagnosticComputer.GetDiagnosticsAsync(document, project, Checksum.Null, ideAnalyzerOptions, span: null,
FindSymbols\SymbolTreeInfoTests.cs (4)
52var checksum1 = SymbolTreeInfo.GetMetadataChecksum(solution.Services, reference1, CancellationToken.None); 56var checksum2 = SymbolTreeInfo.GetMetadataChecksum(solution.Services, reference2, CancellationToken.None); 75var checksum1 = SymbolTreeInfo.GetMetadataChecksum(solution.Services, reference1, CancellationToken.None); 100var checksum2 = SymbolTreeInfo.GetMetadataChecksum(solution.Services, reference2, CancellationToken.None);
Microsoft.CodeAnalysis.ExternalAccess.Razor (3)
Remote\RazorPinnedSolutionInfoWrapper.cs (3)
14internal readonly Checksum UnderlyingObject; 16public RazorPinnedSolutionInfoWrapper(Checksum underlyingObject) 19public static implicit operator RazorPinnedSolutionInfoWrapper(Checksum info)
Microsoft.CodeAnalysis.Features (49)
AddImport\Remote\IRemoteMissingImportDiscoveryService.cs (2)
27Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DocumentId documentId, TextSpan span, string diagnosticId, int maxResults, 31Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DocumentId id, TextSpan span, ImmutableArray<string> diagnosticIds,
CodeLens\IRemoteCodeLensReferencesService.cs (4)
17ValueTask<ReferenceCount?> GetReferenceCountAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan textSpan, int maxResultCount, CancellationToken cancellationToken); 18ValueTask<ImmutableArray<ReferenceLocationDescriptor>?> FindReferenceLocationsAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan textSpan, CancellationToken cancellationToken); 19ValueTask<ImmutableArray<ReferenceMethodDescriptor>?> FindReferenceMethodsAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan textSpan, CancellationToken cancellationToken); 20ValueTask<string> GetFullyQualifiedNameAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan textSpan, CancellationToken cancellationToken);
Completion\Providers\ImportCompletionProvider\AbstractTypeImportCompletionService.cs (2)
167var checksum = await SymbolTreeInfo.GetSourceSymbolsChecksumAsync(project, cancellationToken).ConfigureAwait(false); 211Checksum checksum,
Completion\Providers\ImportCompletionProvider\ExtensionMethodImportCompletionCacheEntry.cs (4)
13public Checksum Checksum { get; } 24Checksum checksum, 35private readonly Checksum _checksum; 40public Builder(Checksum checksum, string langauge, IEqualityComparer<string> comparer)
Completion\Providers\ImportCompletionProvider\ExtensionMethodImportCompletionHelper.cs (1)
251var checksum = await SymbolTreeInfo.GetSourceSymbolsChecksumAsync(project, cancellationToken).ConfigureAwait(false);
Completion\Providers\ImportCompletionProvider\IRemoteExtensionMethodImportCompletionService.cs (2)
15Checksum solutionChecksum, 25ValueTask WarmUpCacheAsync(Checksum solutionChecksum, ProjectId projectId, CancellationToken cancellationToken);
Completion\Providers\ImportCompletionProvider\TypeImportCompletionCacheEntry.cs (4)
21public Checksum Checksum { get; } 33Checksum checksum, 132private readonly Checksum _checksum; 139public Builder(SymbolKey assemblySymbolKey, Checksum checksum, string language, string genericTypeSuffix, EditorBrowsableInfo editorBrowsableInfo)
ConvertTupleToStruct\IRemoteConvertTupleToStructCodeRefactoringService.cs (1)
29Checksum solutionChecksum,
DesignerAttribute\IRemoteDesignerAttributeDiscoveryService.cs (1)
27RemoteServiceCallbackId callbackId, Checksum solutionChecksum, DocumentId? priorityDocument, bool useFrozenSnapshots, CancellationToken cancellationToken);
Diagnostics\IRemoteDiagnosticAnalyzerService.cs (1)
20ValueTask<SerializableDiagnosticAnalysisResults> CalculateDiagnosticsAsync(Checksum solutionChecksum, DiagnosticArguments arguments, CancellationToken cancellationToken);
DocumentHighlighting\IRemoteDocumentHighlightsService.cs (1)
16Checksum solutionChecksum, DocumentId documentId, int position, ImmutableArray<DocumentId> documentIdsToSearch, HighlightingOptions options, CancellationToken cancellationToken);
EditAndContinue\Remote\IRemoteEditAndContinueService.cs (7)
29ValueTask<ImmutableArray<DiagnosticData>> GetDocumentDiagnosticsAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DocumentId documentId, CancellationToken cancellationToken); 30ValueTask<EmitSolutionUpdateResults.Data> EmitSolutionUpdateAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DebuggingSessionId sessionId, CancellationToken cancellationToken); 38ValueTask<DebuggingSessionId> StartDebuggingSessionAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, ImmutableArray<DocumentId> captureMatchingDocuments, bool captureAllMatchingDocuments, bool reportDiagnostics, CancellationToken cancellationToken); 49ValueTask<ImmutableArray<ImmutableArray<ActiveStatementSpan>>> GetBaseActiveStatementSpansAsync(Checksum solutionChecksum, DebuggingSessionId sessionId, ImmutableArray<DocumentId> documentIds, CancellationToken cancellationToken); 50ValueTask<ImmutableArray<ActiveStatementSpan>> GetAdjustedActiveStatementSpansAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DebuggingSessionId sessionId, DocumentId documentId, CancellationToken cancellationToken); 52ValueTask<bool?> IsActiveStatementInExceptionRegionAsync(Checksum solutionChecksum, DebuggingSessionId sessionId, ManagedInstructionId instructionId, CancellationToken cancellationToken); 53ValueTask<LinePositionSpan?> GetCurrentActiveStatementPositionAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DebuggingSessionId sessionId, ManagedInstructionId instructionId, CancellationToken cancellationToken);
EncapsulateField\IRemoteEncapsulateFieldService.cs (1)
29Checksum solutionChecksum,
ExternalAccess\UnitTesting\IRemoteUnitTestingSearchService.cs (2)
16Checksum solutionChecksum, ProjectId projectId, UnitTestingSearchQuery query, CancellationToken cancellationToken); 18Checksum solutionChecksum, ProjectId projectId, UnitTestingSearchQuery query, CancellationToken cancellationToken);
FindUsages\IRemoteFindUsagesService.cs (2)
37Checksum solutionChecksum, 44Checksum solutionChecksum,
FullyQualify\IRemoteFullyQualifyService.cs (1)
13ValueTask<FullyQualifyFixData?> GetFixDataAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan span, bool hideAdvancedMembers, CancellationToken cancellationToken);
InheritanceMargin\IRemoteInheritanceMarginService.cs (1)
16Checksum solutionChecksum,
LegacySolutionEvents\IRemoteLegacySolutionEventsAggregationService.cs (2)
25ValueTask OnWorkspaceChangedAsync(Checksum oldSolutionChecksum, Checksum newSolutionChecksum, WorkspaceChangeKind kind, ProjectId? projectId, DocumentId? documentId, CancellationToken cancellationToken);
NavigateTo\IRemoteNavigateToSearchService.cs (4)
19ValueTask SearchDocumentAsync(Checksum solutionChecksum, DocumentId documentId, string searchPattern, ImmutableArray<string> kinds, RemoteServiceCallbackId callbackId, CancellationToken cancellationToken); 20ValueTask SearchProjectAsync(Checksum solutionChecksum, ProjectId projectId, ImmutableArray<DocumentId> priorityDocumentIds, string searchPattern, ImmutableArray<string> kinds, RemoteServiceCallbackId callbackId, CancellationToken cancellationToken); 22ValueTask SearchGeneratedDocumentsAsync(Checksum solutionChecksum, ProjectId projectId, string searchPattern, ImmutableArray<string> kinds, RemoteServiceCallbackId callbackId, CancellationToken cancellationToken); 25ValueTask HydrateAsync(Checksum solutionChecksum, CancellationToken cancellationToken);
NavigationBar\IRemoteNavigationBarItemService.cs (1)
18Checksum solutionChecksum, DocumentId documentId, bool supportsCodeGeneration, bool forceFrozenPartialSemanticsForCrossProcessOperations, CancellationToken cancellationToken);
StackTraceExplorer\IStackTraceExplorerService.cs (1)
27ValueTask<SerializableDefinitionItem?> TryFindDefinitionAsync(Checksum solutionChecksum, string frameString, StackFrameSymbolPart symbolPart, CancellationToken cancellationToken);
UnusedReferences\IUnusedReferenceAnalysisService.cs (1)
26Checksum solutionChecksum,
ValueTracking\IValueTrackingService.cs (2)
22ValueTask<ImmutableArray<SerializableValueTrackedItem>> TrackValueSourceAsync(Checksum solutionChecksum, TextSpan selection, DocumentId document, CancellationToken cancellationToken); 23ValueTask<ImmutableArray<SerializableValueTrackedItem>> TrackValueSourceAsync(Checksum solutionChecksum, SerializableValueTrackedItem previousTrackedItem, CancellationToken cancellationToken);
Workspace\IRemoteCompilationAvailableService.cs (1)
13ValueTask ComputeCompilationAsync(Checksum solutionChecksum, ProjectId projectId, CancellationToken cancellationToken);
Microsoft.CodeAnalysis.LanguageServer.Protocol (12)
Handler\Diagnostics\AbstractPullDiagnosticHandler.cs (1)
65private readonly ConcurrentDictionary<string, VersionedPullCache<(int, VersionStamp?), (int, Checksum)>> _categoryToVersionedCache = new();
Handler\SemanticTokens\SemanticTokensRefreshQueue.cs (5)
43private readonly Dictionary<ProjectId, Checksum> _projectIdToLastComputedChecksum = new(); 103var projectChecksum = await project.Solution.State.GetChecksumAsync(project.Id, cancellationToken).ConfigureAwait(false); 168private void OnCompilationAvailable(Project project, Checksum projectChecksum) 191private bool ChecksumIsUnchanged_NoLock(Project project, Checksum projectChecksum) 192=> _projectIdToLastComputedChecksum.TryGetValue(project.Id, out var lastChecksum) && lastChecksum == projectChecksum;
Handler\SpellCheck\AbstractSpellCheckingHandler.cs (6)
35private readonly VersionedPullCache<(Checksum parseOptionsChecksum, Checksum textChecksum)?> _versionedCache; 193private static async Task<(Checksum parseOptionsChecksum, Checksum textChecksum)> ComputeChecksumsAsync(Document document, CancellationToken cancellationToken) 196var parseOptionsChecksum = project.State.GetParseOptionsChecksum(); 199var textChecksum = documentChecksumState.Text;
Microsoft.CodeAnalysis.Remote.ServiceHub (211)
CloudCachePersistentStorage.cs (13)
27private static readonly ObjectPool<byte[]> s_byteArrayPool = new(() => new byte[Checksum.HashSize]); 91public sealed override Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CancellationToken cancellationToken) 94protected sealed override Task<bool> ChecksumMatchesAsync(ProjectKey projectKey, Project? project, string name, Checksum checksum, CancellationToken cancellationToken) 97protected sealed override Task<bool> ChecksumMatchesAsync(DocumentKey documentKey, Document? document, string name, Checksum checksum, CancellationToken cancellationToken) 100private async Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CacheContainerKey? containerKey, CancellationToken cancellationToken) 113public sealed override Task<Stream?> ReadStreamAsync(string name, Checksum? checksum, CancellationToken cancellationToken) 116protected sealed override Task<Stream?> ReadStreamAsync(ProjectKey projectKey, Project? project, string name, Checksum? checksum, CancellationToken cancellationToken) 119protected sealed override Task<Stream?> ReadStreamAsync(DocumentKey documentKey, Document? document, string name, Checksum? checksum, CancellationToken cancellationToken) 122private async Task<Stream?> ReadStreamAsync(string name, Checksum? checksum, CacheContainerKey? containerKey, CancellationToken cancellationToken) 158public sealed override Task<bool> WriteStreamAsync(string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 161protected sealed override Task<bool> WriteStreamAsync(ProjectKey projectKey, Project? project, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 164protected sealed override Task<bool> WriteStreamAsync(DocumentKey documentKey, Document? document, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 167private async Task<bool> WriteStreamAsync(string name, Stream stream, Checksum? checksum, CacheContainerKey? containerKey, CancellationToken cancellationToken)
Host\AssetProvider.cs (24)
23private readonly Checksum _solutionChecksum; 28public AssetProvider(Checksum solutionChecksum, SolutionAssetCache assetCache, IAssetSource assetSource, ISerializerService serializerService) 36public override async ValueTask<T> GetAssetAsync<T>(Checksum checksum, CancellationToken cancellationToken) 38Debug.Assert(checksum != Checksum.Null); 45using (Logger.LogBlock(FunctionId.AssetService_GetAssetAsync, Checksum.GetChecksumLogInfo, checksum, cancellationToken)) 54public async ValueTask<ImmutableArray<ValueTuple<Checksum, T>>> GetAssetsAsync<T>(HashSet<Checksum> checksums, CancellationToken cancellationToken) 62using var _ = ArrayBuilder<ValueTuple<Checksum, T>>.GetInstance(checksums.Count, out var list); 63foreach (var checksum in checksums) 69public async ValueTask SynchronizeSolutionAssetsAsync(Checksum solutionChecksum, CancellationToken cancellationToken) 82using (Logger.LogBlock(FunctionId.AssetService_SynchronizeSolutionAssetsAsync, Checksum.GetChecksumLogInfo, solutionChecksum, cancellationToken)) 97public async ValueTask SynchronizeProjectAssetsAsync(HashSet<Checksum> projectChecksums, CancellationToken cancellationToken) 107using (Logger.LogBlock(FunctionId.AssetService_SynchronizeProjectAssetsAsync, Checksum.GetChecksumsLogInfo, projectChecksums, cancellationToken)) 114public bool EnsureCacheEntryIfExists(Checksum checksum) 124public async ValueTask SynchronizeAssetsAsync(ISet<Checksum> checksums, CancellationToken cancellationToken) 126Debug.Assert(!checksums.Contains(Checksum.Null)); 130using (Logger.LogBlock(FunctionId.AssetService_SynchronizeAssetsAsync, Checksum.GetChecksumsLogInfo, checksums, cancellationToken)) 139private async Task<object> RequestAssetAsync(Checksum checksum, CancellationToken cancellationToken) 141Debug.Assert(checksum != Checksum.Null); 143using var _ = PooledHashSet<Checksum>.GetInstance(out var checksums); 150private async Task<ImmutableArray<(Checksum checksum, object value)>> RequestAssetsAsync(ISet<Checksum> checksums, CancellationToken cancellationToken) 152Debug.Assert(!checksums.Contains(Checksum.Null)); 156return ImmutableArray<(Checksum, object)>.Empty;
Host\ChecksumSynchronizer.cs (17)
24public async ValueTask SynchronizeAssetsAsync(HashSet<Checksum> checksums, CancellationToken cancellationToken) 32public async ValueTask SynchronizeSolutionAssetsAsync(Checksum solutionChecksum, CancellationToken cancellationToken) 49public async ValueTask SynchronizeProjectAssetsAsync(HashSet<Checksum> projectChecksums, CancellationToken cancellationToken) 57private async ValueTask SynchronizeProjectAssets_NoLockAsync(IReadOnlyCollection<Checksum> projectChecksums, CancellationToken cancellationToken) 63using var pooledObject = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 66foreach (var projectChecksum in projectChecksums) 78private async ValueTask SynchronizeProjectsAsync(IReadOnlyCollection<Checksum> projectChecksums, CancellationToken cancellationToken) 81using var pooledObject = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 91using var pooledObject = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 98private async ValueTask CollectChecksumChildrenAsync(HashSet<Checksum> set, IReadOnlyCollection<Checksum> checksums, CancellationToken cancellationToken) 100foreach (var checksum in checksums) 107private void AddIfNeeded(HashSet<Checksum> checksums, IEnumerable<object> checksumOrCollections) 113case Checksum checksum: 125private void AddIfNeeded(HashSet<Checksum> checksums, Checksum checksum) 127if (checksum != Checksum.Null)
Host\IAssetSource.cs (3)
18ValueTask<ImmutableArray<(Checksum, object)>> GetAssetsAsync(Checksum solutionChecksum, ISet<Checksum> checksums, ISerializerService serializerService, CancellationToken cancellationToken);
Host\RemoteDocumentDifferenceService.cs (2)
52var oldTextChecksum = (await oldDocument.State.GetStateChecksumsAsync(cancellationToken).ConfigureAwait(false)).Text; 53var newTextChecksum = (await newDocument.State.GetStateChecksumsAsync(cancellationToken).ConfigureAwait(false)).Text;
Host\RemoteWorkspace.cs (8)
48public AssetProvider CreateAssetProvider(Checksum solutionChecksum, SolutionAssetCache assetCache, IAssetSource assetSource) 63AssetProvider assetProvider, Checksum solutionChecksum, int workspaceVersion, CancellationToken cancellationToken) 67var currentSolutionChecksum = await this.CurrentSolution.State.GetChecksumAsync(cancellationToken).ConfigureAwait(false); 97Checksum solutionChecksum, 106Checksum solutionChecksum, 113Contract.ThrowIfTrue(solutionChecksum == Checksum.Null); 243Checksum solutionChecksum, 356Checksum solutionChecksum,
Host\RemoteWorkspace.InFlightSolution.cs (2)
27public readonly Checksum SolutionChecksum; 56Checksum solutionChecksum,
Host\RemoteWorkspace.SolutionCreator.cs (22)
44public async Task<bool> IsIncrementalUpdateAsync(Checksum newSolutionChecksum, CancellationToken cancellationToken) 53public async Task<Solution> CreateSolutionAsync(Checksum newSolutionChecksum, CancellationToken cancellationToken) 85if (newSolutionChecksums.FrozenSourceGeneratedDocumentIdentity != Checksum.Null && newSolutionChecksums.FrozenSourceGeneratedDocumentText != Checksum.Null) 108using var olds = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 109using var news = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 121private async Task<Solution> UpdateProjectsAsync(Solution solution, HashSet<Checksum> oldChecksums, HashSet<Checksum> newChecksums, CancellationToken cancellationToken) 189using var pooledObject = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 294private async Task<Project> UpdateProjectInfoAsync(Project project, Checksum infoChecksum, CancellationToken cancellationToken) 368using var olds = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 369using var news = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 386using var pooledObject = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 472private async Task<TextDocument> UpdateDocumentInfoAsync(TextDocument document, Checksum infoChecksum, CancellationToken cancellationToken) 500private static async ValueTask<Dictionary<DocumentId, DocumentStateChecksums>> GetDocumentMapAsync(AssetProvider assetProvider, HashSet<Checksum> documents, CancellationToken cancellationToken) 506using var pooledObject = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 525private static async Task<Dictionary<DocumentId, DocumentStateChecksums>> GetDocumentMapAsync(IEnumerable<TextDocumentState> states, HashSet<Checksum> documents, CancellationToken cancellationToken) 541private static async ValueTask<Dictionary<ProjectId, ProjectStateChecksums>> GetProjectMapAsync(AssetProvider assetProvider, HashSet<Checksum> projects, CancellationToken cancellationToken) 547using var pooledObject = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 564private static async Task<Dictionary<ProjectId, ProjectStateChecksums>> GetProjectMapAsync(Solution solution, HashSet<Checksum> projects, CancellationToken cancellationToken) 581private async Task ValidateChecksumAsync(Checksum checksumFromRequest, Solution incrementalSolutionBuilt, CancellationToken cancellationToken) 583var currentSolutionChecksum = await incrementalSolutionBuilt.State.GetChecksumAsync(CancellationToken.None).ConfigureAwait(false);
Host\RemoteWorkspace_SolutionCaching.cs (4)
18private (Checksum checksum, Solution solution) _lastRequestedPrimaryBranchSolution; 24private (Checksum checksum, Solution solution) _lastRequestedAnyBranchSolution; 33private readonly Dictionary<Checksum, InFlightSolution> _solutionChecksumToSolution = new(); 40Checksum solutionChecksum,
Host\RemoteWorkspaceManager.cs (2)
109public async ValueTask<Solution> GetSolutionAsync(ServiceBrokerClient client, Checksum solutionChecksum, CancellationToken cancellationToken) 126Checksum solutionChecksum,
Host\SolutionAssetCache.cs (8)
56private readonly ConcurrentDictionary<Checksum, Entry> _assets = new(concurrencyLevel: 4, capacity: 10); 85public object GetOrAdd(Checksum checksum, object value) 94public bool TryGetAsset<T>(Checksum checksum, [MaybeNullWhen(false)] out T value) 98using (Logger.LogBlock(FunctionId.AssetStorage_TryGetAsset, Checksum.GetChecksumLogInfo, checksum, CancellationToken.None)) 186PooledHashSet<Checksum>? pinnedChecksums = null; 198pinnedChecksums = PooledHashSet<Checksum>.GetInstance(); 215private async ValueTask AddPinnedChecksumsAsync(HashSet<Checksum> pinnedChecksums, CancellationToken cancellationToken) 233else if (child is Checksum childChecksum)
Host\SolutionAssetSource.cs (3)
30public async ValueTask<ImmutableArray<(Checksum, object)>> GetAssetsAsync(Checksum solutionChecksum, ISet<Checksum> checksums, ISerializerService serializerService, CancellationToken cancellationToken)
Host\TestUtils.cs (29)
24public static void RemoveChecksums(this Dictionary<Checksum, object> map, ChecksumWithChildren checksums) 26var set = new HashSet<Checksum>(); 32public static void RemoveChecksums(this Dictionary<Checksum, object> map, IEnumerable<Checksum> checksums) 34foreach (var checksum in checksums) 42Checksum 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) 107items.Add(new KeyValuePair<Checksum, object>(checksum, await assetService.GetAssetAsync<object>(checksum, CancellationToken.None).ConfigureAwait(false))); 113async Task<HashSet<Checksum>> GetAllChildrenChecksumsAsync(Checksum solutionChecksum) 115var set = new HashSet<Checksum>(); 120foreach (var projectChecksum in solutionChecksums.Projects) 125foreach (var documentChecksum in projectChecksums.Documents.Concat(projectChecksums.AdditionalDocuments).Concat(projectChecksums.AnalyzerConfigDocuments)) 145public static async Task<Dictionary<Checksum, object>> GetAssetMapAsync(this Solution solution, CancellationToken cancellationToken) 147var map = new Dictionary<Checksum, object>(); 156public static async Task<Dictionary<Checksum, object>> GetAssetMapAsync(this Project project, CancellationToken cancellationToken) 158var map = new Dictionary<Checksum, object>(); 164public static Task AppendAssetMapAsync(this Solution solution, Dictionary<Checksum, object> map, CancellationToken cancellationToken) 168this Solution solution, Dictionary<Checksum, object> map, ProjectId? projectId, CancellationToken cancellationToken) 190private static async Task AppendAssetMapAsync(this Project project, Dictionary<Checksum, object> map, CancellationToken cancellationToken) 207private static HashSet<Checksum> Flatten(ChecksumWithChildren checksums) 209var set = new HashSet<Checksum>(); 215public static void AppendChecksums(this HashSet<Checksum> set, ChecksumWithChildren checksums) 221if (child is Checksum checksum) 223if (checksum != Checksum.Null)
Services\AssetSynchronization\RemoteAssetSynchronizationService.cs (6)
33public ValueTask SynchronizePrimaryWorkspaceAsync(Checksum solutionChecksum, int workspaceVersion, CancellationToken cancellationToken) 37using (RoslynLogger.LogBlock(FunctionId.RemoteHostService_SynchronizePrimaryWorkspaceAsync, Checksum.GetChecksumLogInfo, solutionChecksum, cancellationToken)) 46public ValueTask SynchronizeTextAsync(DocumentId documentId, Checksum baseTextChecksum, IEnumerable<TextChange> textChanges, CancellationToken cancellationToken) 52using (RoslynLogger.LogBlock(FunctionId.RemoteHostService_SynchronizeTextAsync, Checksum.GetChecksumLogInfo, baseTextChecksum, cancellationToken)) 69var newChecksum = serializer.CreateChecksum(newText, cancellationToken); 80Checksum baseTextChecksum,
Services\BrokeredServiceBase.cs (5)
86Checksum solutionChecksum, 108Checksum solutionChecksum, Func<Solution, ValueTask<T>> implementation, CancellationToken cancellationToken) 133Checksum solutionChecksum, Func<Solution, ValueTask> implementation, CancellationToken cancellationToken) 150Checksum solutionChecksum1, 151Checksum solutionChecksum2,
Services\CodeLensReferences\RemoteCodeLensReferencesService.cs (4)
43public async ValueTask<ReferenceCount?> GetReferenceCountAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan textSpan, int maxResultCount, CancellationToken cancellationToken) 66public async ValueTask<ImmutableArray<ReferenceLocationDescriptor>?> 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\ConvertTupleToStructCodeRefactoringProvider\RemoteConvertTupleToStructCodeRefactoringService.cs (1)
42Checksum solutionChecksum,
Services\DependentTypeFinder\RemoteDependentTypeFinderService.cs (1)
30Checksum solutionChecksum,
Services\DesignerAttributeDiscovery\RemoteDesignerAttributeDiscoveryService.cs (1)
47Checksum solutionChecksum,
Services\DiagnosticAnalyzer\DiagnosticComputer.cs (5)
47private readonly Checksum _solutionChecksum; 61Checksum solutionChecksum, 82Checksum solutionChecksum, 359public Checksum SolutionChecksum { get; } 364public CompilationWithAnalyzersCacheEntry(Checksum solutionChecksum, Project project, CompilationWithAnalyzers compilationWithAnalyzers, BidirectionalMap<string, DiagnosticAnalyzer> analyzerToIdMap)
Services\DiagnosticAnalyzer\RemoteDiagnosticAnalyzerService.cs (1)
56public async ValueTask<SerializableDiagnosticAnalysisResults> CalculateDiagnosticsAsync(Checksum solutionChecksum, DiagnosticArguments arguments, CancellationToken cancellationToken)
Services\DocumentHighlights\RemoteDocumentHighlightsService.cs (1)
30Checksum solutionChecksum, DocumentId documentId, int position, ImmutableArray<DocumentId> documentIdsToSearch, HighlightingOptions options, CancellationToken cancellationToken)
Services\EditAndContinue\RemoteEditAndContinueService.cs (7)
85public ValueTask<DebuggingSessionId> StartDebuggingSessionAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, ImmutableArray<DocumentId> captureMatchingDocuments, bool captureAllMatchingDocuments, bool reportDiagnostics, CancellationToken cancellationToken) 124public ValueTask<ImmutableArray<DiagnosticData>> GetDocumentDiagnosticsAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DocumentId documentId, CancellationToken cancellationToken) 146Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DebuggingSessionId sessionId, CancellationToken cancellationToken) 196public ValueTask<ImmutableArray<ImmutableArray<ActiveStatementSpan>>> GetBaseActiveStatementSpansAsync(Checksum solutionChecksum, DebuggingSessionId sessionId, ImmutableArray<DocumentId> documentIds, CancellationToken cancellationToken) 207public ValueTask<ImmutableArray<ActiveStatementSpan>> GetAdjustedActiveStatementSpansAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DebuggingSessionId sessionId, DocumentId documentId, CancellationToken cancellationToken) 219public ValueTask<bool?> IsActiveStatementInExceptionRegionAsync(Checksum solutionChecksum, DebuggingSessionId sessionId, ManagedInstructionId instructionId, CancellationToken cancellationToken) 230public ValueTask<LinePositionSpan?> GetCurrentActiveStatementPositionAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, DebuggingSessionId sessionId, ManagedInstructionId instructionId, CancellationToken cancellationToken)
Services\EncapsulateField\RemoteEncapsulateFieldService.cs (1)
42Checksum solutionChecksum,
Services\ExtensionMethodImportCompletion\RemoteExtensionMethodImportCompletionService.cs (2)
31Checksum solutionChecksum, 72public ValueTask WarmUpCacheAsync(Checksum solutionChecksum, ProjectId projectId, CancellationToken cancellationToken)
Services\FindUsages\RemoteFindUsagesService.cs (2)
32Checksum solutionChecksum, 55Checksum solutionChecksum,
Services\FullyQualify\RemoteFullyQualifyService.cs (1)
28public ValueTask<FullyQualifyFixData?> GetFixDataAsync(Checksum solutionChecksum, DocumentId documentId, TextSpan span, bool hideAdvancedMembers, CancellationToken cancellationToken)
Services\InheritanceMargin\RemoteInheritanceMarginService.cs (1)
29Checksum solutionChecksum,
Services\KeepAlive\RemoteKeepAliveService.cs (1)
24Checksum solutionChecksum,
Services\LegacySolutionEvents\RemoteLegacySolutionEventsAggregationService.cs (2)
41Checksum oldSolutionChecksum, 42Checksum newSolutionChecksum,
Services\MissingImportDiscovery\RemoteMissingImportDiscoveryService.cs (2)
33Checksum solutionChecksum, 61Checksum solutionChecksum,
Services\NavigateToSearch\RemoteNavigateToSearchService.cs (4)
41public ValueTask HydrateAsync(Checksum solutionChecksum, CancellationToken cancellationToken) 51Checksum solutionChecksum, 69Checksum solutionChecksum, 90Checksum solutionChecksum,
Services\NavigationBar\RemoteNavigationBarItemService.cs (1)
28Checksum solutionChecksum, DocumentId documentId, bool supportsCodeGeneration, bool forceFrozenPartialSemanticsForCrossProcessOperations, CancellationToken cancellationToken)
Services\Renamer\RemoteRenamerService.cs (3)
36Checksum solutionChecksum, 62Checksum solutionChecksum, 88Checksum solutionChecksum,
Services\SemanticClassification\RemoteSemanticClassificationService.Caching.cs (6)
47private readonly LinkedList<(DocumentId id, ClassificationType type, Checksum checksum, ImmutableArray<ClassifiedSpan> classifiedSpans)> _cachedData = new(); 83DocumentKey documentKey, TextSpan textSpan, ClassificationType type, Checksum checksum, CancellationToken cancellationToken) 198Checksum checksum, 215private bool TryGetFromInMemoryCache(DocumentKey documentKey, Checksum checksum, out ImmutableArray<ClassifiedSpan> classifiedSpans) 234Checksum checksum, 261Checksum checksum,
Services\SemanticClassification\RemoteSemanticClassificationService.cs (1)
24Checksum solutionChecksum,
Services\StackTraceExplorer\RemoteStackTraceExplorerService.cs (1)
25public ValueTask<SerializableDefinitionItem?> TryFindDefinitionAsync(Checksum solutionChecksum, string frameString, StackFrameSymbolPart symbolPart, CancellationToken cancellationToken)
Services\SymbolFinder\RemoteSymbolFinderService.cs (7)
37Checksum solutionChecksum, 71public ValueTask FindLiteralReferencesAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, object value, TypeCode typeCode, CancellationToken cancellationToken) 94Checksum solutionChecksum, 115Checksum solutionChecksum, 131Checksum solutionChecksum, 150Checksum solutionChecksum, string pattern, SymbolFilter criteria, CancellationToken cancellationToken) 162Checksum solutionChecksum, ProjectId projectId, string pattern, SymbolFilter criteria, CancellationToken cancellationToken)
Services\Tagging\RemoteTaggerCompilationAvailableService.cs (1)
27Checksum solutionChecksum,
Services\TaskList\RemoteTaskListService.cs (1)
29Checksum solutionChecksum, DocumentId documentId, ImmutableArray<TaskListItemDescriptor> descriptors, CancellationToken cancellationToken)
Services\UnitTesting\RemoteUnitTestingSearchService.cs (2)
28Checksum solutionChecksum, 50Checksum solutionChecksum,
Services\UnusedReferences\RemoteUnusedReferenceAnalysisService.cs (1)
26public ValueTask<ImmutableArray<ReferenceInfo>> GetUnusedReferencesAsync(Checksum solutionChecksum, string projectFilePath, string projectAssetsFilePath, ImmutableArray<ReferenceInfo> projectReferences, CancellationToken cancellationToken)
Services\ValueTracking\RemoteValueTrackingService.cs (2)
28public ValueTask<ImmutableArray<SerializableValueTrackedItem>> TrackValueSourceAsync(Checksum solutionChecksum, TextSpan selection, DocumentId documentId, CancellationToken cancellationToken) 47public ValueTask<ImmutableArray<SerializableValueTrackedItem>> TrackValueSourceAsync(Checksum solutionChecksum, SerializableValueTrackedItem previousTrackedItem, CancellationToken cancellationToken)
Microsoft.CodeAnalysis.Remote.Workspaces (72)
AbstractAssetProvider.cs (7)
25public abstract ValueTask<T> GetAssetAsync<T>(Checksum checksum, CancellationToken cancellationToken); 27public async Task<SolutionInfo> CreateSolutionInfoAsync(Checksum solutionChecksum, CancellationToken cancellationToken) 33foreach (var projectChecksum in solutionChecksums.Projects) 47public async Task<ProjectInfo> CreateProjectInfoAsync(Checksum projectChecksum, CancellationToken cancellationToken) 85public async Task<DocumentInfo> CreateDocumentInfoAsync(Checksum documentChecksum, CancellationToken cancellationToken) 102foreach (var documentChecksum in documentChecksums) 115foreach (var checksum in checksums)
BrokeredServiceConnection.cs (10)
170public override async ValueTask<bool> TryInvokeAsync(Solution solution, Func<TService, Checksum, CancellationToken, ValueTask> invocation, CancellationToken cancellationToken) 186public override async ValueTask<Optional<TResult>> TryInvokeAsync<TResult>(Solution solution, Func<TService, Checksum, CancellationToken, ValueTask<TResult>> invocation, CancellationToken cancellationToken) 203public override async ValueTask<bool> TryInvokeAsync(Project project, Func<TService, Checksum, CancellationToken, ValueTask> invocation, CancellationToken cancellationToken) 219public override async ValueTask<Optional<TResult>> TryInvokeAsync<TResult>(Project project, Func<TService, Checksum, CancellationToken, ValueTask<TResult>> invocation, CancellationToken cancellationToken) 236public override async ValueTask<bool> TryInvokeAsync(Solution solution, Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask> invocation, CancellationToken cancellationToken) 255public override async ValueTask<Optional<TResult>> TryInvokeAsync<TResult>(Solution solution, Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask<TResult>> invocation, CancellationToken cancellationToken) 274public override async ValueTask<bool> TryInvokeAsync(Project project, Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask> invocation, CancellationToken cancellationToken) 293public override async ValueTask<Optional<TResult>> TryInvokeAsync<TResult>(Project project, Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask<TResult>> invocation, CancellationToken cancellationToken) 312public override async ValueTask<bool> TryInvokeAsync(Solution solution1, Solution solution2, Func<TService, Checksum, Checksum, CancellationToken, ValueTask> invocation, CancellationToken cancellationToken)
ExternalAccess\Pythia\Api\PythiaPinnedSolutionInfoWrapper.cs (3)
14internal readonly Checksum UnderlyingObject; 16public PythiaPinnedSolutionInfoWrapper(Checksum underlyingObject) 19public static implicit operator PythiaPinnedSolutionInfoWrapper(Checksum info)
ExternalAccess\UnitTesting\Api\UnitTestingPinnedSolutionInfoWrapper.cs (3)
14internal readonly Checksum UnderlyingObject; 16public UnitTestingPinnedSolutionInfoWrapper(Checksum underlyingObject) 19public static implicit operator UnitTestingPinnedSolutionInfoWrapper(Checksum info)
IRemoteAssetSynchronizationService.cs (2)
18ValueTask SynchronizePrimaryWorkspaceAsync(Checksum solutionChecksum, int workspaceVersion, CancellationToken cancellationToken); 19ValueTask SynchronizeTextAsync(DocumentId documentId, Checksum baseTextChecksum, IEnumerable<TextChange> textChanges, CancellationToken cancellationToken);
ISolutionAssetProvider.cs (2)
22ValueTask GetAssetsAsync(PipeWriter pipeWriter, Checksum solutionChecksum, Checksum[] checksums, CancellationToken cancellationToken);
RemoteHostAssetSerialization.cs (16)
25IReadOnlyDictionary<Checksum, SolutionAsset>? assetMap, 28Checksum solutionChecksum, 29Checksum[] checksums, 69static void WriteAsset(ObjectWriter writer, ISerializerService serializer, SolutionReplicationContext context, Checksum checksum, SolutionAsset asset, CancellationToken cancellationToken) 83public static async ValueTask<ImmutableArray<(Checksum, object)>> ReadDataAsync( 84PipeReader pipeReader, Checksum solutionChecksum, ISet<Checksum> checksums, ISerializerService serializerService, CancellationToken cancellationToken) 90public static ImmutableArray<(Checksum, object)> ReadData(Stream stream, Checksum solutionChecksum, ISet<Checksum> checksums, ISerializerService serializerService, CancellationToken cancellationToken) 92Debug.Assert(!checksums.Contains(Checksum.Null)); 94using var _ = ArrayBuilder<(Checksum, object)>.GetInstance(out var results); 100var responseSolutionChecksum = Checksum.ReadFrom(reader); 108var responseChecksum = Checksum.ReadFrom(reader);
SolutionAsset.cs (4)
15public static readonly SolutionAsset Null = new(value: null, Checksum.Null, WellKnownSynchronizationKind.Null); 28public readonly Checksum Checksum; 32public SolutionAsset(object? value, Checksum checksum, WellKnownSynchronizationKind kind) 45public SolutionAsset(Checksum checksum, object value)
SolutionAssetProvider.cs (5)
36public async ValueTask GetAssetsAsync(PipeWriter pipeWriter, Checksum solutionChecksum, Checksum[] checksums, CancellationToken cancellationToken) 56private async ValueTask GetAssetsWorkerAsync(PipeWriter pipeWriter, Checksum solutionChecksum, Checksum[] checksums, CancellationToken cancellationToken) 63IReadOnlyDictionary<Checksum, SolutionAsset>? assetMap = null;
SolutionAssetStorage.cs (6)
32private readonly Dictionary<Checksum, Scope> _checksumToScope = new(); 34public Scope GetScope(Checksum solutionChecksum) 63var checksum = projectId == null 86var solutionChecksum = scope.SolutionChecksum; 116public async ValueTask<SolutionAsset?> GetAssetAsync(Checksum checksum, CancellationToken cancellationToken) 130public bool IsPinned(Checksum checksum)
SolutionAssetStorage.Scope.cs (14)
22public readonly Checksum SolutionChecksum; 38Checksum solutionChecksum, 53public async ValueTask<SolutionAsset> GetAssetAsync(Checksum checksum, CancellationToken cancellationToken) 55if (checksum == Checksum.Null) 68public async ValueTask<IReadOnlyDictionary<Checksum, SolutionAsset>> GetAssetsAsync( 69Checksum[] checksums, CancellationToken cancellationToken) 76var result = new Dictionary<Checksum, SolutionAsset>(numberOfChecksumsToSearch); 78if (checksumsToFind.Object.Remove(Checksum.Null)) 80result[Checksum.Null] = SolutionAsset.Null; 94private async ValueTask<SolutionAsset> FindAssetAsync(Checksum checksum, CancellationToken cancellationToken) 115private async Task FindAssetsAsync(HashSet<Checksum> remainingChecksumsToFind, Dictionary<Checksum, SolutionAsset> result, CancellationToken cancellationToken) 127private async Task FindAssetsAsync(HashSet<Checksum> remainingChecksumsToFind, Dictionary<Checksum, object> result, CancellationToken cancellationToken)
Microsoft.CodeAnalysis.Workspaces (369)
Classification\IRemoteSemanticClassificationService.cs (2)
22Checksum solutionChecksum, 40Checksum checksum,
Classification\SemanticClassificationCacheUtilities.cs (2)
13public static async Task<(DocumentKey documentKey, Checksum checksum)> GetDocumentKeyAndChecksumAsync( 23var projectKey = new ProjectKey(SolutionKey.ToSolutionKey(project.Solution), project.Id, project.FilePath, project.Name, Checksum.Null);
ExternalAccess\UnitTesting\Api\UnitTestingChecksumWrapper.cs (2)
11private Checksum UnderlyingObject { get; } 13public UnitTestingChecksumWrapper(Checksum underlyingObject)
FindSymbols\FindReferences\IRemoteDependentTypeFinderService.cs (1)
15Checksum solutionChecksum,
FindSymbols\IRemoteSymbolFinderService.cs (7)
32ValueTask FindReferencesAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, SerializableSymbolAndProjectId symbolAndProjectIdArg, ImmutableArray<DocumentId> documentArgs, 35ValueTask FindLiteralReferencesAsync(Checksum solutionChecksum, RemoteServiceCallbackId callbackId, object value, TypeCode typeCode, CancellationToken cancellationToken); 38Checksum solutionChecksum, ProjectId projectId, string name, SearchKind searchKind, SymbolFilter criteria, CancellationToken cancellationToken); 41Checksum solutionChecksum, string name, bool ignoreCase, SymbolFilter criteria, CancellationToken cancellationToken); 44Checksum solutionChecksum, ProjectId projectId, string name, bool ignoreCase, SymbolFilter criteria, CancellationToken cancellationToken); 47Checksum solutionChecksum, string pattern, SymbolFilter criteria, CancellationToken cancellationToken); 50Checksum solutionChecksum, ProjectId projectId, string pattern, SymbolFilter criteria, CancellationToken cancellationToken);
FindSymbols\Shared\AbstractSyntaxIndex.cs (6)
18protected delegate TIndex? IndexReader(StringTable stringTable, ObjectReader reader, Checksum? checksum); 19protected delegate TIndex IndexCreator(Document document, SyntaxNode root, Checksum checksum, CancellationToken cancellationToken); 24protected AbstractSyntaxIndex(Checksum? checksum) 109Checksum textChecksum, 110Checksum textAndDirectivesChecksum, 131var checksum = root.ContainsDirectives && ContainsIfDirective(root, ifDirectiveKind) ? textAndDirectivesChecksum : textChecksum;
FindSymbols\Shared\AbstractSyntaxIndex_Persistence.cs (15)
20private static readonly Checksum s_serializationFormatChecksum = Checksum.Create("37"); 27private static readonly ConditionalWeakTable<ParseOptions, Checksum> s_ppDirectivesToChecksum = new(); 29public readonly Checksum? Checksum; 33Checksum textChecksum, 34Checksum textAndDirectivesChecksum, 57Checksum? checksum, 85public static async ValueTask<(Checksum textOnlyChecksum, Checksum textAndDirectivesChecksum)> GetChecksumsAsync( 115var directivesChecksum = s_ppDirectivesToChecksum.GetValue( 117static parseOptions => Checksum.Create(parseOptions.PreprocessorSymbolNames)); 119var textChecksum = Checksum.Create(documentChecksumState.Text, s_serializationFormatChecksum); 120var textAndDirectivesChecksum = Checksum.Create(textChecksum, directivesChecksum);
FindSymbols\SymbolTree\SymbolTreeInfo.cs (7)
35public Checksum Checksum { get; } 76Checksum checksum, 88Checksum checksum, 101public static SymbolTreeInfo CreateEmpty(Checksum checksum) 112public SymbolTreeInfo WithChecksum(Checksum checksum) 274private static SpellChecker CreateSpellChecker(Checksum checksum, ImmutableArray<Node> sortedNodes) 433Checksum checksum,
FindSymbols\SymbolTree\SymbolTreeInfo_Metadata.cs (10)
105Checksum? checksum, 124Checksum checksum, 149Checksum checksum, 187public static Checksum GetMetadataChecksum( 193if (ChecksumCache.TryGetValue(reference, out var cached)) 201static Checksum GetMetadataChecksumSlow(SolutionServices services, PortableExecutableReference reference, CancellationToken cancellationToken) 206var checksum = serializer.CreateChecksum(reference, cancellationToken); 211return Checksum.Create(checksum, SerializationFormatChecksum); 243private readonly Checksum _checksum; 264Checksum checksum, Metadata? metadata)
FindSymbols\SymbolTree\SymbolTreeInfo_Serialization.cs (7)
22private static readonly Checksum SerializationFormatChecksum = Checksum.Create("24"); 31Checksum checksum, 32Func<Checksum, ValueTask<SymbolTreeInfo>> createAsync, 85Checksum checksum, 185ObjectReader reader, Checksum checksum) 265public static SymbolTreeInfo? ReadSymbolTreeInfo(ObjectReader reader, Checksum checksum)
FindSymbols\SymbolTree\SymbolTreeInfo_Source.cs (10)
36Project project, Checksum checksum, CancellationToken cancellationToken) 70private static readonly ConditionalWeakTable<ProjectState, AsyncLazy<Checksum>> s_projectToSourceChecksum = new(); 72public static Task<Checksum> GetSourceSymbolsChecksumAsync(Project project, CancellationToken cancellationToken) 75project.State, static p => new AsyncLazy<Checksum>(c => ComputeSourceSymbolsChecksumAsync(p, c), cacheResult: true)); 80private static async Task<Checksum> ComputeSourceSymbolsChecksumAsync(ProjectState projectState, CancellationToken cancellationToken) 99var compilationOptionsChecksum = projectStateChecksums.CompilationOptions; 100var parseOptionsChecksum = projectStateChecksums.ParseOptions; 103using var _ = ArrayBuilder<Checksum>.GetInstance(out var allChecksums); 114return Checksum.Create(allChecksums); 118Project project, Checksum checksum, CancellationToken cancellationToken)
FindSymbols\SymbolTree\SymbolTreeInfoCacheService.cs (2)
172var checksum = await SymbolTreeInfo.GetSourceSymbolsChecksumAsync(project, cancellationToken).ConfigureAwait(false); 194var checksum = SymbolTreeInfo.GetMetadataChecksum(project.Solution.Services, reference, cancellationToken);
FindSymbols\SyntaxTree\SyntaxTreeIndex.cs (1)
20Checksum? checksum,
FindSymbols\SyntaxTree\SyntaxTreeIndex_Create.cs (1)
43Document document, SyntaxNode root, Checksum checksum, CancellationToken _)
FindSymbols\SyntaxTree\SyntaxTreeIndex_Persistence.cs (2)
17IChecksummedPersistentStorageService storageService, DocumentKey documentKey, Checksum? checksum, StringTable stringTable, CancellationToken cancellationToken) 45StringTable stringTable, ObjectReader reader, Checksum? checksum)
FindSymbols\TopLevelSyntaxTree\TopLevelSyntaxTreeIndex.cs (1)
22Checksum? checksum,
FindSymbols\TopLevelSyntaxTree\TopLevelSyntaxTreeIndex_Create.cs (1)
18Document document, SyntaxNode root, Checksum checksum, CancellationToken cancellationToken)
FindSymbols\TopLevelSyntaxTree\TopLevelSyntaxTreeIndex_Persistence.cs (2)
16IChecksummedPersistentStorageService storageService, DocumentKey documentKey, Checksum? checksum, StringTable stringTable, CancellationToken cancellationToken) 28StringTable stringTable, ObjectReader reader, Checksum? checksum)
Remote\IRemoteKeepAliveService.cs (1)
22ValueTask KeepAliveAsync(Checksum solutionChecksum, CancellationToken cancellationToken);
Remote\ISerializerService.cs (2)
33Checksum CreateChecksum(object value, CancellationToken cancellationToken); 34Checksum CreateParseOptionsChecksum(ParseOptions value);
Remote\RemoteHostClient.cs (14)
109Func<TService, Checksum, CancellationToken, ValueTask> invocation, 119Func<TService, Checksum, CancellationToken, ValueTask<TResult>> invocation, 130/// Equivalent to <see cref="TryInvokeAsync{TService}(Solution, Func{TService, Checksum, CancellationToken, ValueTask}, CancellationToken)"/> 137Func<TService, Checksum, CancellationToken, ValueTask> invocation, 146/// Equivalent to <see cref="TryInvokeAsync{TService}(Solution, Func{TService, Checksum, CancellationToken, ValueTask}, CancellationToken)"/> 153Func<TService, Checksum, CancellationToken, ValueTask<TResult>> invocation, 165Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask> invocation, 176Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask<TResult>> invocation, 188/// Equivalent to <see cref="TryInvokeAsync{TService}(Solution, Func{TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask}, object, CancellationToken)"/> 195Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask> invocation, 205/// Equivalent to <see cref="TryInvokeAsync{TService}(Solution, Func{TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask}, object, CancellationToken)"/> 212Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask<TResult>> invocation, 226Func<TService, Checksum, Checksum, CancellationToken, ValueTask> invocation,
Remote\RemoteServiceConnection.cs (10)
47Func<TService, Checksum, CancellationToken, ValueTask> invocation, 52Func<TService, Checksum, CancellationToken, ValueTask<TResult>> invocation, 59Func<TService, Checksum, CancellationToken, ValueTask> invocation, 64Func<TService, Checksum, CancellationToken, ValueTask<TResult>> invocation, 71Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask> invocation, 76Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask<TResult>> invocation, 83Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask> invocation, 88Func<TService, Checksum, RemoteServiceCallbackId, CancellationToken, ValueTask<TResult>> invocation, 96Func<TService, Checksum, Checksum, CancellationToken, ValueTask> invocation,
Rename\IRemoteRenamerService.cs (3)
37Checksum solutionChecksum, 46Checksum solutionChecksum, 53Checksum solutionChecksum,
Serialization\PooledList.cs (6)
17public static PooledObject<HashSet<Checksum>> CreateChecksumSet(IEnumerable<Checksum> checksums = null) 19var items = SharedPools.Default<HashSet<Checksum>>().GetPooledObject(); 21items.Object.UnionWith(checksums ?? SpecializedCollections.EmptyEnumerable<Checksum>()); 29public static PooledObject<Dictionary<Checksum, object>> CreateResultSet() 30=> SharedPools.Default<Dictionary<Checksum, object>>().GetPooledObject();
Serialization\SerializerService.cs (9)
60public Checksum CreateChecksum(object value, CancellationToken cancellationToken) 76return Checksum.Null; 82return Checksum.Create(value, this); 85return Checksum.Create(CreateChecksum((MetadataReference)value, cancellationToken)); 88return Checksum.Create(CreateChecksum((AnalyzerReference)value, cancellationToken)); 91return Checksum.Create(((SerializableSourceText)value).GetChecksum()); 94return Checksum.Create(((SourceText)value).GetChecksum()); 217public Checksum CreateParseOptionsChecksum(ParseOptions value) 218=> Checksum.Create(value, this);
Serialization\SerializerService_ChecksumWithChildren.cs (4)
37case Checksum checksum: 56var checksum = Checksum.ReadFrom(reader); 66children.Add(Checksum.ReadFrom(reader));
Serialization\SerializerService_Reference.cs (5)
27public static Checksum CreateChecksum(MetadataReference reference, CancellationToken cancellationToken) 40public static Checksum CreateChecksum(AnalyzerReference reference, CancellationToken cancellationToken) 61return Checksum.Create(stream); 141private static Checksum CreatePortableExecutableReferenceChecksum(PortableExecutableReference reference, CancellationToken cancellationToken) 152return Checksum.Create(stream);
Storage\AbstractPersistentStorageService.cs (15)
205public Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CancellationToken cancellationToken) 208public Task<bool> ChecksumMatchesAsync(Project project, string name, Checksum checksum, CancellationToken cancellationToken) 211public Task<bool> ChecksumMatchesAsync(Document document, string name, Checksum checksum, CancellationToken cancellationToken) 214public Task<bool> ChecksumMatchesAsync(ProjectKey project, string name, Checksum checksum, CancellationToken cancellationToken) 217public Task<bool> ChecksumMatchesAsync(DocumentKey document, string name, Checksum checksum, CancellationToken cancellationToken) 229public Task<Stream> ReadStreamAsync(string name, Checksum checksum, CancellationToken cancellationToken) 232public Task<Stream> ReadStreamAsync(Project project, string name, Checksum checksum, CancellationToken cancellationToken) 235public Task<Stream> ReadStreamAsync(Document document, string name, Checksum checksum, CancellationToken cancellationToken) 238public Task<Stream> ReadStreamAsync(ProjectKey project, string name, Checksum checksum, CancellationToken cancellationToken) 241public Task<Stream> ReadStreamAsync(DocumentKey document, string name, Checksum checksum, CancellationToken cancellationToken) 253public Task<bool> WriteStreamAsync(string name, Stream stream, Checksum checksum, CancellationToken cancellationToken) 256public Task<bool> WriteStreamAsync(Project project, string name, Stream stream, Checksum checksum, CancellationToken cancellationToken) 259public Task<bool> WriteStreamAsync(Document document, string name, Stream stream, Checksum checksum, CancellationToken cancellationToken) 262public Task<bool> WriteStreamAsync(ProjectKey projectKey, string name, Stream stream, Checksum checksum, CancellationToken cancellationToken) 265public Task<bool> WriteStreamAsync(DocumentKey documentKey, string name, Stream stream, Checksum checksum, CancellationToken cancellationToken)
Storage\SQLite\v2\Interop\SqlConnection.cs (6)
302public Optional<Checksum.HashData> ReadChecksum_MustRunInTransaction(Database database, Table table, long rowId) 310if (length != Checksum.HashSize) 311return new Optional<Checksum.HashData>(); 313Span<byte> bytes = stackalloc byte[Checksum.HashSize]; 316Contract.ThrowIfFalse(MemoryMarshal.TryRead(bytes, out Checksum.HashData result)); 317return new Optional<Checksum.HashData>(result);
Storage\SQLite\v2\SQLitePersistentStorage.Accessor.cs (11)
120public Task<bool> ChecksumMatchesAsync(TKey key, string name, Checksum checksum, CancellationToken cancellationToken) 125private bool ChecksumMatches(TKey key, string name, Checksum checksum, CancellationToken cancellationToken) 137public Task<Stream?> ReadStreamAsync(TKey key, string name, Checksum? checksum, CancellationToken cancellationToken) 143private Stream? ReadStream(TKey key, string name, Checksum? checksum, CancellationToken cancellationToken) 217public Task<bool> WriteStreamAsync(TKey key, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 222private bool WriteStream(TKey key, string dataName, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 239checksum ??= Checksum.Null; 240Span<byte> checksumBytes = stackalloc byte[Checksum.HashSize]; 263SqlConnection connection, Database database, long rowId, Checksum? checksum) 295private Optional<Checksum.HashData> ReadChecksum( 312private bool ChecksumsMatch_MustRunInTransaction(SqlConnection connection, Database database, long rowId, Checksum checksum)
Storage\SQLite\v2\SQLitePersistentStorage_DocumentSerialization.cs (3)
18protected override Task<bool> ChecksumMatchesAsync(DocumentKey documentKey, Document? document, string name, Checksum checksum, CancellationToken cancellationToken) 21protected override Task<Stream?> ReadStreamAsync(DocumentKey documentKey, Document? document, string name, Checksum? checksum, CancellationToken cancellationToken) 24protected override Task<bool> WriteStreamAsync(DocumentKey documentKey, Document? document, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken)
Storage\SQLite\v2\SQLitePersistentStorage_ProjectSerialization.cs (3)
18protected override Task<bool> ChecksumMatchesAsync(ProjectKey projectKey, Project? project, string name, Checksum checksum, CancellationToken cancellationToken) 21protected override Task<Stream?> ReadStreamAsync(ProjectKey projectKey, Project? project, string name, Checksum? checksum, CancellationToken cancellationToken) 24protected override Task<bool> WriteStreamAsync(ProjectKey projectKey, Project? project, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken)
Storage\SQLite\v2\SQLitePersistentStorage_SolutionSerialization.cs (3)
18public override Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CancellationToken cancellationToken) 21public override Task<Stream?> ReadStreamAsync(string name, Checksum? checksum, CancellationToken cancellationToken) 24public override Task<bool> WriteStreamAsync(string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken)
TaskList\IRemoteTaskListService.cs (1)
17ValueTask<ImmutableArray<TaskListItem>> GetTaskListItemsAsync(Checksum solutionChecksum, DocumentId documentId, ImmutableArray<TaskListItemDescriptor> descriptors, CancellationToken cancellationToken);
Utilities\SpellChecker.cs (5)
20public Checksum Checksum { get; } 24public SpellChecker(Checksum checksum, BKTree bKTree) 30public SpellChecker(Checksum checksum, IEnumerable<string> corpus) 65var checksum = Checksum.ReadFrom(reader);
Workspace\Host\PersistentStorage\AbstractPersistentStorage.cs (21)
48public abstract Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CancellationToken cancellationToken); 49public abstract Task<Stream?> ReadStreamAsync(string name, Checksum? checksum, CancellationToken cancellationToken); 50public abstract Task<bool> WriteStreamAsync(string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken); 52protected abstract Task<bool> ChecksumMatchesAsync(ProjectKey projectKey, Project? project, string name, Checksum checksum, CancellationToken cancellationToken); 53protected abstract Task<bool> ChecksumMatchesAsync(DocumentKey documentKey, Document? document, string name, Checksum checksum, CancellationToken cancellationToken); 54protected abstract Task<Stream?> ReadStreamAsync(ProjectKey projectKey, Project? project, string name, Checksum? checksum, CancellationToken cancellationToken); 55protected abstract Task<Stream?> ReadStreamAsync(DocumentKey documentKey, Document? document, string name, Checksum? checksum, CancellationToken cancellationToken); 56protected abstract Task<bool> WriteStreamAsync(ProjectKey projectKey, Project? project, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken); 57protected abstract Task<bool> WriteStreamAsync(DocumentKey documentKey, Document? document, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken); 59public Task<bool> ChecksumMatchesAsync(ProjectKey projectKey, string name, Checksum checksum, CancellationToken cancellationToken) 62public Task<bool> ChecksumMatchesAsync(DocumentKey documentKey, string name, Checksum checksum, CancellationToken cancellationToken) 65public Task<Stream?> ReadStreamAsync(ProjectKey projectKey, string name, Checksum? checksum, CancellationToken cancellationToken) 68public Task<Stream?> ReadStreamAsync(DocumentKey documentKey, string name, Checksum? checksum, CancellationToken cancellationToken) 71public Task<bool> WriteStreamAsync(ProjectKey projectKey, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 74public Task<bool> WriteStreamAsync(DocumentKey documentKey, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 77public Task<bool> ChecksumMatchesAsync(Project project, string name, Checksum checksum, CancellationToken cancellationToken) 80public Task<bool> ChecksumMatchesAsync(Document document, string name, Checksum checksum, CancellationToken cancellationToken) 83public Task<Stream?> ReadStreamAsync(Project project, string name, Checksum? checksum, CancellationToken cancellationToken) 86public Task<Stream?> ReadStreamAsync(Document document, string name, Checksum? checksum, CancellationToken cancellationToken) 98public Task<bool> WriteStreamAsync(Project project, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 101public Task<bool> WriteStreamAsync(Document document, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken)
Workspace\Host\PersistentStorage\IChecksummedPersistentStorage.cs (15)
21Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CancellationToken cancellationToken = default); 27Task<bool> ChecksumMatchesAsync(Project project, string name, Checksum checksum, CancellationToken cancellationToken = default); 33Task<bool> ChecksumMatchesAsync(Document document, string name, Checksum checksum, CancellationToken cancellationToken = default); 35Task<bool> ChecksumMatchesAsync(ProjectKey project, string name, Checksum checksum, CancellationToken cancellationToken = default); 36Task<bool> ChecksumMatchesAsync(DocumentKey document, string name, Checksum checksum, CancellationToken cancellationToken = default); 43Task<Stream> ReadStreamAsync(string name, Checksum checksum = null, CancellationToken cancellationToken = default); 50Task<Stream> ReadStreamAsync(Project project, string name, Checksum checksum = null, CancellationToken cancellationToken = default); 57Task<Stream> ReadStreamAsync(Document document, string name, Checksum checksum = null, CancellationToken cancellationToken = default); 59Task<Stream> ReadStreamAsync(ProjectKey project, string name, Checksum checksum = null, CancellationToken cancellationToken = default); 60Task<Stream> ReadStreamAsync(DocumentKey document, string name, Checksum checksum = null, CancellationToken cancellationToken = default); 71Task<bool> WriteStreamAsync(string name, Stream stream, Checksum checksum = null, CancellationToken cancellationToken = default); 82Task<bool> WriteStreamAsync(Project project, string name, Stream stream, Checksum checksum = null, CancellationToken cancellationToken = default); 93Task<bool> WriteStreamAsync(Document document, string name, Stream stream, Checksum checksum = null, CancellationToken cancellationToken = default); 99Task<bool> WriteStreamAsync(ProjectKey projectKey, string name, Stream stream, Checksum checksum = null, CancellationToken cancellationToken = default); 105Task<bool> WriteStreamAsync(DocumentKey documentKey, string name, Stream stream, Checksum checksum = null, CancellationToken cancellationToken = default);
Workspace\Host\PersistentStorage\IPersistentStorageConfiguration.cs (2)
89var suffix = Checksum.Create(fullPath);
Workspace\Host\PersistentStorage\NoOpPersistentStorage.cs (15)
36public Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CancellationToken cancellationToken) 39public Task<bool> ChecksumMatchesAsync(Project project, string name, Checksum checksum, CancellationToken cancellationToken) 42public Task<bool> ChecksumMatchesAsync(Document document, string name, Checksum checksum, CancellationToken cancellationToken) 45public Task<bool> ChecksumMatchesAsync(ProjectKey project, string name, Checksum checksum, CancellationToken cancellationToken) 48public Task<bool> ChecksumMatchesAsync(DocumentKey document, string name, Checksum checksum, CancellationToken cancellationToken) 60public Task<Stream?> ReadStreamAsync(string name, Checksum checksum, CancellationToken cancellationToken) 63public Task<Stream?> ReadStreamAsync(Project project, string name, Checksum checksum, CancellationToken cancellationToken) 66public Task<Stream?> ReadStreamAsync(Document document, string name, Checksum checksum, CancellationToken cancellationToken) 69public Task<Stream?> ReadStreamAsync(ProjectKey project, string name, Checksum checksum, CancellationToken cancellationToken) 72public Task<Stream?> ReadStreamAsync(DocumentKey document, string name, Checksum checksum, CancellationToken cancellationToken) 84public Task<bool> WriteStreamAsync(string name, Stream stream, Checksum checksum, CancellationToken cancellationToken) 87public Task<bool> WriteStreamAsync(Project project, string name, Stream stream, Checksum checksum, CancellationToken cancellationToken) 90public Task<bool> WriteStreamAsync(Document document, string name, Stream stream, Checksum checksum, CancellationToken cancellationToken) 93public Task<bool> WriteStreamAsync(ProjectKey projectKey, string name, Stream stream, Checksum checksum, CancellationToken cancellationToken) 96public Task<bool> WriteStreamAsync(DocumentKey documentKey, string name, Stream stream, Checksum checksum, CancellationToken cancellationToken)
Workspace\Host\PersistentStorage\ProjectKey.cs (2)
32public readonly Checksum ParseOptionsChecksum; 34public ProjectKey(SolutionKey solution, ProjectId id, string? filePath, string name, Checksum parseOptionsChecksum)
Workspace\ProjectSystem\ProjectSystemProjectOptionsProcessor.cs (3)
31private Checksum? _commandLineChecksum; 65var checksum = Checksum.Create(arguments);
Workspace\Solution\Checksum.cs (18)
24internal sealed partial class Checksum : IObjectWritable, IEquatable<Checksum> 31public static readonly Checksum Null = new(default); 43public static Checksum From(byte[] checksum) 50public static Checksum From(ImmutableArray<byte> checksum) 53public static Checksum From(ReadOnlySpan<byte> checksum) 65public bool Equals(Checksum other) 71=> Equals(obj as Checksum); 96public static Checksum FromBase64String(string value) 102public static bool operator ==(Checksum left, Checksum right) 103=> EqualityComparer<Checksum>.Default.Equals(left, right); 105public static bool operator !=(Checksum left, Checksum right) 108public static bool operator ==(Checksum left, HashData right) 111public static bool operator !=(Checksum left, HashData right) 125public static Checksum ReadFrom(ObjectReader reader) 128public static Func<Checksum, string> GetChecksumLogInfo { get; } 131public static Func<IEnumerable<Checksum>, string> GetChecksumsLogInfo { get; }
Workspace\Solution\Checksum_Factory.cs (17)
25public static Checksum Create(IEnumerable<string> values) 40public static Checksum Create(string value) 51public static Checksum Create(Stream stream) 86public static Checksum Create(IObjectWritable @object) 99public static Checksum Create(Checksum checksum1, Checksum checksum2) 113public static Checksum Create(Checksum checksum1, Checksum checksum2, Checksum checksum3) 128public static Checksum Create(IEnumerable<Checksum> checksums) 134foreach (var checksum in checksums) 142public static Checksum Create(ImmutableArray<byte> bytes) 156public static Checksum Create<T>(T value, ISerializerService serializer) 170public static Checksum Create(ParseOptions value, ISerializerService serializer)
Workspace\Solution\ChecksumCollection.cs (12)
20internal class ChecksumCollection : ChecksumWithChildren, IReadOnlyCollection<Checksum> 22public ChecksumCollection(ImmutableArray<Checksum> checksums) : this(checksums.CastArray<object>()) 31public Checksum this[int index] => (Checksum)Children[index]; 33public IEnumerator<Checksum> GetEnumerator() 34=> this.Children.Cast<Checksum>().GetEnumerator(); 42HashSet<Checksum> searchingChecksumsLeft, 43Dictionary<Checksum, object> result, 61HashSet<Checksum> searchingChecksumsLeft, 62Dictionary<Checksum, object> result, 76var checksum = (Checksum)checksums.Children[i];
Workspace\Solution\ChecksumWithChildren.cs (4)
22public Checksum Checksum { get; } 26private static Checksum CreateChecksum(ImmutableArray<object> children) 29return Checksum.Create(children.Select(c => c as Checksum ?? ((ChecksumCollection)c).Checksum));
Workspace\Solution\DocumentInfo.cs (3)
152private Checksum? _lazyChecksum; 273Checksum IChecksummedObject.Checksum 274=> _lazyChecksum ??= Checksum.Create(this);
Workspace\Solution\IChecksummedObject.cs (1)
14Checksum Checksum { get; }
Workspace\Solution\Project.cs (1)
553internal Task<Checksum> GetDependentChecksumAsync(CancellationToken cancellationToken)
Workspace\Solution\ProjectInfo.cs (3)
487private Checksum? _lazyChecksum; 675Checksum IChecksummedObject.Checksum 676=> _lazyChecksum ??= Checksum.Create(this);
Workspace\Solution\ProjectState_Checksum.cs (8)
27public Task<Checksum> GetChecksumAsync(CancellationToken cancellationToken) 36public Checksum GetParseOptionsChecksum() 39private Checksum GetParseOptionsChecksum(ISerializerService serializer) 42: Checksum.Null; 56var infoChecksum = serializer.CreateChecksum(ProjectInfo.Attributes, cancellationToken); 59var compilationOptionsChecksum = SupportsCompilation ? ChecksumCache.GetOrCreate(CompilationOptions, _ => serializer.CreateChecksum(CompilationOptions, cancellationToken)) : Checksum.Null; 61var parseOptionsChecksum = GetParseOptionsChecksum(serializer);
Workspace\Solution\SolutionInfo.cs (3)
99private Checksum? _lazyChecksum; 172Checksum IChecksummedObject.Checksum 173=> _lazyChecksum ??= Checksum.Create(this);
Workspace\Solution\SolutionState.CompilationTracker.cs (8)
1132private AsyncLazy<Checksum>? _lazyDependentChecksum; 1198public Task<Checksum> GetDependentChecksumAsync(SolutionState solution, CancellationToken cancellationToken) 1204Interlocked.CompareExchange(ref _lazyDependentChecksum, new AsyncLazy<Checksum>(c => ComputeDependentChecksumAsync(tmp, c), cacheResult: true), null); 1210private async Task<Checksum> ComputeDependentChecksumAsync(SolutionState solution, CancellationToken cancellationToken) 1212using var tempChecksumArray = TemporaryArray<Checksum>.Empty; 1215var projectChecksum = await this.ProjectState.GetChecksumAsync(cancellationToken).ConfigureAwait(false); 1236var referencedProjectChecksum = await referencedProject.GetChecksumAsync(cancellationToken).ConfigureAwait(false); 1240return Checksum.Create(tempChecksumArray.ToImmutableAndClear());
Workspace\Solution\SolutionState.cs (1)
387public Task<Checksum> GetDependentChecksumAsync(ProjectId projectId, CancellationToken cancellationToken)
Workspace\Solution\SolutionState.GeneratedFileReplacingCompilationTracker.cs (5)
26private AsyncLazy<Checksum>? _lazyDependentChecksum; 119public Task<Checksum> GetDependentChecksumAsync(SolutionState solution, CancellationToken cancellationToken) 125Interlocked.CompareExchange(ref _lazyDependentChecksum, new AsyncLazy<Checksum>(c => ComputeDependentChecksumAsync(tmp, c), cacheResult: true), null); 131private async Task<Checksum> ComputeDependentChecksumAsync(SolutionState solution, CancellationToken cancellationToken) 132=> Checksum.Create(
Workspace\Solution\SolutionState.ICompilationTracker.cs (1)
43Task<Checksum> GetDependentChecksumAsync(SolutionState solution, CancellationToken cancellationToken);
Workspace\Solution\SolutionState_Checksum.cs (7)
45public async Task<Checksum> GetChecksumAsync(CancellationToken cancellationToken) 105public async Task<Checksum> GetChecksumAsync(ProjectId projectId, CancellationToken cancellationToken) 146var attributesChecksum = serializer.CreateChecksum(SolutionAttributes, cancellationToken); 148var frozenSourceGeneratedDocumentIdentityChecksum = Checksum.Null; 149var frozenSourceGeneratedDocumentTextChecksum = Checksum.Null;
Workspace\Solution\SourceGeneratedDocumentState.cs (2)
74Checksum.From(existingText.GetChecksum()) == Checksum.From(sourceText.GetChecksum()) &&
Workspace\Solution\StateChecksums.cs (34)
19Checksum attributesChecksum, 22Checksum frozenSourceGeneratedDocumentIdentity, 23Checksum frozenSourceGeneratedDocumentText) 32public Checksum Attributes => (Checksum)Children[0]; 35public Checksum FrozenSourceGeneratedDocumentIdentity => (Checksum)Children[3]; 36public Checksum FrozenSourceGeneratedDocumentText => (Checksum)Children[4]; 40HashSet<Checksum> searchingChecksumsLeft, 41Dictionary<Checksum, object> result, 95Checksum infoChecksum, 96Checksum compilationOptionsChecksum, 97Checksum parseOptionsChecksum, 121public Checksum Info => (Checksum)Children[0]; 122public Checksum CompilationOptions => (Checksum)Children[1]; 123public Checksum ParseOptions => (Checksum)Children[2]; 136HashSet<Checksum> searchingChecksumsLeft, 137Dictionary<Checksum, object> result, 212public DocumentStateChecksums(Checksum infoChecksum, Checksum textChecksum) 221public Checksum Info => (Checksum)Children[0]; 222public Checksum Text => (Checksum)Children[1]; 226HashSet<Checksum> searchingChecksumsLeft, 227Dictionary<Checksum, object> result, 261public static bool TryGetValue(object value, [NotNullWhen(true)] out Checksum? checksum) 270checksum = (Checksum)result; 274public static Checksum GetOrCreate(object value, ConditionalWeakTable<object, object>.CreateValueCallback checksumCreator) 277return (Checksum)s_cache.GetValue(value, checksumCreator);
Workspace\Solution\TextDocumentState_Checksum.cs (3)
24public Task<Checksum> GetChecksumAsync(CancellationToken cancellationToken) 41var infoChecksum = serializer.CreateChecksum(Attributes, cancellationToken); 43var textChecksum = serializer.CreateChecksum(serializableText, cancellationToken);
Microsoft.CodeAnalysis.Workspaces.Test.Utilities (11)
Fakes\SimpleAssetSource.cs (7)
21private readonly IReadOnlyDictionary<Checksum, object> _map; 23public SimpleAssetSource(ISerializerService serializerService, IReadOnlyDictionary<Checksum, object> map) 29public ValueTask<ImmutableArray<(Checksum, object)>> GetAssetsAsync( 30Checksum solutionChecksum, ISet<Checksum> checksums, ISerializerService deserializerService, CancellationToken cancellationToken) 32var results = new List<(Checksum, object)>(); 34foreach (var checksum in checksums)
TestGeneratorReference.cs (4)
19private readonly Checksum _checksum; 32Array.Resize(ref checksumArray, Checksum.HashSize); 33_checksum = Checksum.From(checksumArray); 47Checksum IChecksummedObject.Checksum => _checksum;
Microsoft.CodeAnalysis.Workspaces.UnitTests (2)
FindAllDeclarationsTests.cs (2)
671project, Checksum.Null, cancellationToken: CancellationToken.None); 681var readInfo = SymbolTreeInfo.TestAccessor.ReadSymbolTreeInfo(reader, Checksum.Null);
Microsoft.VisualStudio.LanguageServices (13)
Storage\CloudCachePersistentStorage.cs (13)
27private static readonly ObjectPool<byte[]> s_byteArrayPool = new(() => new byte[Checksum.HashSize]); 91public sealed override Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CancellationToken cancellationToken) 94protected sealed override Task<bool> ChecksumMatchesAsync(ProjectKey projectKey, Project? project, string name, Checksum checksum, CancellationToken cancellationToken) 97protected sealed override Task<bool> ChecksumMatchesAsync(DocumentKey documentKey, Document? document, string name, Checksum checksum, CancellationToken cancellationToken) 100private async Task<bool> ChecksumMatchesAsync(string name, Checksum checksum, CacheContainerKey? containerKey, CancellationToken cancellationToken) 113public sealed override Task<Stream?> ReadStreamAsync(string name, Checksum? checksum, CancellationToken cancellationToken) 116protected sealed override Task<Stream?> ReadStreamAsync(ProjectKey projectKey, Project? project, string name, Checksum? checksum, CancellationToken cancellationToken) 119protected sealed override Task<Stream?> ReadStreamAsync(DocumentKey documentKey, Document? document, string name, Checksum? checksum, CancellationToken cancellationToken) 122private async Task<Stream?> ReadStreamAsync(string name, Checksum? checksum, CacheContainerKey? containerKey, CancellationToken cancellationToken) 158public sealed override Task<bool> WriteStreamAsync(string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 161protected sealed override Task<bool> WriteStreamAsync(ProjectKey projectKey, Project? project, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 164protected sealed override Task<bool> WriteStreamAsync(DocumentKey documentKey, Document? document, string name, Stream stream, Checksum? checksum, CancellationToken cancellationToken) 167private async Task<bool> WriteStreamAsync(string name, Stream stream, Checksum? checksum, CacheContainerKey? containerKey, CancellationToken cancellationToken)
Microsoft.VisualStudio.LanguageServices.CSharp.UnitTests (6)
PersistentStorage\AbstractPersistentStorageTests.cs (6)
65private static readonly Checksum s_checksum1 = Checksum.Create("1"); 66private static readonly Checksum s_checksum2 = Checksum.Create("2"); 111private static Checksum? GetChecksum1(bool withChecksum) 114private static Checksum? GetChecksum2(bool withChecksum)
Roslyn.VisualStudio.Next.UnitTests (104)
Remote\SerializationValidator.cs (19)
31public override async ValueTask<T> GetAssetAsync<T>(Checksum checksum, CancellationToken cancellationToken) 51public readonly Checksum Checksum; 80public async Task<T> GetValueAsync<T>(Checksum checksum) 121foreach (var projectChecksum in solutionObject.Projects) 142foreach (var checksum in projectObject.Documents) 148foreach (var checksum in projectObject.ProjectReferences) 155foreach (var checksum in projectObject.MetadataReferences) 162foreach (var checksum in projectObject.AnalyzerReferences) 169foreach (var checksum in projectObject.AdditionalDocuments) 175foreach (var checksum in projectObject.AnalyzerConfigDocuments) 194Checksum checksum, 210internal async Task VerifySolutionStateSerializationAsync(Solution solution, Checksum solutionChecksum) 270if (child1 is Checksum) 272Assert.Equal((Checksum)child1, (Checksum)child2); 307foreach (var checksum in checksums) 337internal async Task VerifyChecksumInServiceAsync(Checksum checksum, WellKnownSynchronizationKind kind) 354internal static void ChecksumEqual(Checksum checksum1, WellKnownSynchronizationKind kind1, Checksum checksum2, WellKnownSynchronizationKind kind2)
Remote\SnapshotSerializationTests.cs (10)
90var checksum = scope.SolutionChecksum; 125var checksum = scope.SolutionChecksum; 196var firstProjectChecksum = await solution.GetProject(solution.ProjectIds[0]).State.GetChecksumAsync(CancellationToken.None); 197var secondProjectChecksum = await solution.GetProject(solution.ProjectIds[1]).State.GetChecksumAsync(CancellationToken.None); 534var source = serializer.CreateChecksum(await document.GetTextAsync().ConfigureAwait(false), CancellationToken.None); 535var metadata = serializer.CreateChecksum(new MissingMetadataReference(), CancellationToken.None); 536var analyzer = serializer.CreateChecksum(new AnalyzerFileReference(Path.Combine(TempRoot.Root, "missing"), new MissingAnalyzerLoader()), CancellationToken.None); 550var checksum = await project.State.GetChecksumAsync(CancellationToken.None).ConfigureAwait(false); 669var original = serializer.CreateChecksum(originalOptions, CancellationToken.None); 670var recovered = serializer.CreateChecksum(recoveredOptions, CancellationToken.None);
Services\AssetProviderTests.cs (14)
45var sessionId = Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())); 46var checksum = Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())); 53var assetSource = new SimpleAssetSource(workspace.Services.GetService<ISerializerService>(), new Dictionary<Checksum, object>() { { checksum, data } }); 59var stored2 = await provider.GetAssetsAsync<object>(new HashSet<Checksum> { checksum }, CancellationToken.None); 81var sessionId = Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())); 86await service.SynchronizeAssetsAsync(new HashSet<Checksum>(map.Keys), CancellationToken.None); 109var sessionId = Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())); 134var sessionId = Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())); 139await service.SynchronizeProjectAssetsAsync(new HashSet<Checksum> { await project.State.GetChecksumAsync(CancellationToken.None) }, CancellationToken.None);
Services\ServiceHubServicesTests.cs (5)
100private static async Task<AssetProvider> GetAssetProviderAsync(Workspace workspace, Workspace remoteWorkspace, Solution solution, Dictionary<Checksum, object> map = null) 105map ??= new Dictionary<Checksum, object>(); 108var sessionId = Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())); 136var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None);
Services\SolutionAssetCacheTests.cs (7)
32var checksum = Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())); 46var checksum = Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())); 77var checksum1 = checksums.Checksum; 80var checksum2 = Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray()));
Services\SolutionServiceTests.cs (48)
49var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None); 65var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None); 89var solutionChecksum = await workspace.CurrentSolution.State.GetChecksumAsync(CancellationToken.None); 118var solutionChecksum = await workspace.CurrentSolution.State.GetChecksumAsync(CancellationToken.None); 141var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None); 348var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None); 426var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None); 454var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None); 494var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None); 535var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None); 542var project1Checksum = await solution.State.GetChecksumAsync(project1.Id, CancellationToken.None); 547var project2Checksum = await solution.State.GetChecksumAsync(project2.Id, CancellationToken.None); 567var map = new Dictionary<Checksum, object>(); 569Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())), new SolutionAssetCache(), new SimpleAssetSource(workspace.Services.GetService<ISerializerService>(), map), remoteWorkspace.Services.GetService<ISerializerService>()); 573var project1Checksum = await solution.State.GetChecksumAsync(project1.Id, CancellationToken.None); 580var project2Checksum = await solution.State.GetChecksumAsync(project2.Id, CancellationToken.None); 586var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None); 609var map = new Dictionary<Checksum, object>(); 611Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())), new SolutionAssetCache(), new SimpleAssetSource(workspace.Services.GetService<ISerializerService>(), map), remoteWorkspace.Services.GetService<ISerializerService>()); 614var project2Checksum = await solution.State.GetChecksumAsync(project2.Id, CancellationToken.None); 621var project3Checksum = await solution.State.GetChecksumAsync(project3.Id, CancellationToken.None); 642var map = new Dictionary<Checksum, object>(); 644Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())), new SolutionAssetCache(), new SimpleAssetSource(workspace.Services.GetService<ISerializerService>(), map), remoteWorkspace.Services.GetService<ISerializerService>()); 648var project3Checksum = await solution.State.GetChecksumAsync(project3.Id, CancellationToken.None); 654var project2Checksum = await solution.State.GetChecksumAsync(project2.Id, CancellationToken.None); 661var project1Checksum = await solution.State.GetChecksumAsync(project1.Id, CancellationToken.None); 684var map = new Dictionary<Checksum, object>(); 686Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())), new SolutionAssetCache(), new SimpleAssetSource(workspace.Services.GetService<ISerializerService>(), map), remoteWorkspace.Services.GetService<ISerializerService>()); 690var project3Checksum = await solution.State.GetChecksumAsync(project3.Id, CancellationToken.None); 695var project2Checksum = await solution.State.GetChecksumAsync(project2.Id, CancellationToken.None); 700var project1Checksum = await solution.State.GetChecksumAsync(project1.Id, CancellationToken.None); 722var map = new Dictionary<Checksum, object>(); 724Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())), new SolutionAssetCache(), new SimpleAssetSource(workspace.Services.GetService<ISerializerService>(), map), remoteWorkspace.Services.GetService<ISerializerService>()); 728var project3Checksum = await solution.State.GetChecksumAsync(project3.Id, CancellationToken.None); 733var project2Checksum = await solution.State.GetChecksumAsync(project2.Id, CancellationToken.None); 738var project1Checksum = await solution.State.GetChecksumAsync(project1.Id, CancellationToken.None); 758var map = new Dictionary<Checksum, object>(); 760Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray())), new SolutionAssetCache(), new SimpleAssetSource(workspace.Services.GetService<ISerializerService>(), map), remoteWorkspace.Services.GetService<ISerializerService>()); 764var project1Checksum = await solution.State.GetChecksumAsync(project1.Id, CancellationToken.None); 771var project2Checksum = await solution.State.GetChecksumAsync(project2.Id, CancellationToken.None); 796var project1Checksum = await solution.State.GetChecksumAsync(project1.Id, CancellationToken.None); 814var map = new Dictionary<Checksum, object>(); 818var solutionChecksum = await solution.State.GetChecksumAsync(CancellationToken.None); 830var newSolutionChecksum = await newSolution.State.GetChecksumAsync(CancellationToken.None); 847private static async Task<AssetProvider> GetAssetProviderAsync(Workspace workspace, RemoteWorkspace remoteWorkspace, Solution solution, Dictionary<Checksum, object> map = null) 852map ??= new Dictionary<Checksum, object>(); 855var sessionId = Checksum.Create(ImmutableArray.CreateRange(Guid.NewGuid().ToByteArray()));
TestUtils.cs (1)
17public static void VerifyAssetStorage<T>(IEnumerable<KeyValuePair<Checksum, T>> items, SolutionAssetCache storage)