37 references to AsyncLazy
Microsoft.CodeAnalysis.EditorFeatures (1)
RenameTracking\RenameTrackingTaggerProvider.RenameTrackingCommitter.cs (1)
49_renameSymbolResultGetter = new AsyncLazy<RenameTrackingSolutionSet>(c => RenameSymbolWorkerAsync(c), cacheResult: true);
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (2)
Utilities\AsyncLazyTests.cs (2)
69var lazy = new AsyncLazy<object>(c => Task.FromResult(new object()), cacheResult: true); 95? new AsyncLazy<object>(asynchronousComputeFunction, cacheResult: true)
Microsoft.CodeAnalysis.Features (6)
AddImport\SearchScopes\SourceSymbolsProjectSearchScope.cs (1)
57=> new(async c =>
EditAndContinue\EditAndContinueDocumentAnalysesCache.cs (1)
191var lazyResults = new AsyncLazy<DocumentAnalysisResults>(
EditAndContinue\EditSession.cs (2)
113? new AsyncLazy<ActiveStatementsMap>(GetBaseActiveStatementsAsync, cacheResult: true) 116Capabilities = new AsyncLazy<EditAndContinueCapabilities>(GetCapabilitiesAsync, cacheResult: true);
EncapsulateField\EncapsulateFieldResult.cs (1)
24_lazySolution = new AsyncLazy<Solution>(getSolutionAsync, cacheResult: true);
NavigateTo\AbstractNavigateToSearchService.CachedDocumentSearch.cs (1)
161static t => new AsyncLazy<TopLevelSyntaxTreeIndex?>(
Microsoft.CodeAnalysis.Remote.ServiceHub (1)
Services\ClientOptionProviders.cs (1)
37var lazyOptions = ImmutableInterlocked.GetOrAdd(ref _cache, languageServices.Language, _ => new AsyncLazy<TOptions>(GetRemoteOptions, cacheResult: true));
Microsoft.CodeAnalysis.Workspaces (25)
AsyncLazy`1.cs (1)
17=> new(asynchronousComputeFunction, cacheResult);
FindSymbols\Declarations\DeclarationFinder_AllDeclarations.cs (2)
66var lazyCompilation = new AsyncLazy<Compilation>(project.GetRequiredCompilationAsync, cacheResult: true); 117var lazyAssembly = new AsyncLazy<IAssemblySymbol?>(async cancellationToken =>
FindSymbols\FindReferences\DependentTypeFinder_ProjectIndex.cs (1)
42project, p => new AsyncLazy<ProjectIndex>(
FindSymbols\SymbolTree\SymbolTreeInfo_Metadata.cs (2)
138id => new AsyncLazy<SymbolTreeInfo>( 158metadataId => new AsyncLazy<SymbolTreeInfo>(
FindSymbols\SymbolTree\SymbolTreeInfo_Source.cs (1)
75project.State, static p => new AsyncLazy<Checksum>(c => ComputeSourceSymbolsChecksumAsync(p, c), cacheResult: true));
Workspace\Solution\Document.cs (1)
491var newAsyncLazy = new AsyncLazy<DocumentOptionSet>(async cancellationToken =>
Workspace\Solution\ProjectState.cs (9)
91_lazyChecksums = new AsyncLazy<ProjectStateChecksums>(ComputeChecksumsAsync, cacheResult: true); 122_lazyLatestDocumentVersion = new AsyncLazy<VersionStamp>(c => ComputeLatestDocumentVersionAsync(DocumentStates, AdditionalDocumentStates, c), cacheResult: true); 123_lazyLatestDocumentTopLevelChangeVersion = new AsyncLazy<VersionStamp>(c => ComputeLatestDocumentTopLevelChangeVersionAsync(DocumentStates, AdditionalDocumentStates, c), cacheResult: true); 131_lazyChecksums = new AsyncLazy<ProjectStateChecksums>(ComputeChecksumsAsync, cacheResult: true); 198return new AsyncLazy<VersionStamp>(c => ComputeTopLevelChangeTextVersionAsync(oldVersion, newDocument, c), cacheResult: true); 202return new AsyncLazy<VersionStamp>(c => ComputeLatestDocumentTopLevelChangeVersionAsync(newDocumentStates, newAdditionalDocumentStates, c), cacheResult: true); 956? new AsyncLazy<VersionStamp>(c => ComputeLatestDocumentVersionAsync(newDocumentStates, newAdditionalDocumentStates, c), cacheResult: true) 958? new AsyncLazy<VersionStamp>(newDocument.GetTextVersionAsync, cacheResult: true) 962? new AsyncLazy<VersionStamp>(c => ComputeLatestDocumentTopLevelChangeVersionAsync(newDocumentStates, newAdditionalDocumentStates, c), cacheResult: true)
Workspace\Solution\SolutionState.CompilationTracker.cs (3)
1140Interlocked.CompareExchange(ref _lazyDependentVersion, new AsyncLazy<VersionStamp>(c => ComputeDependentVersionAsync(tmp, c), cacheResult: true), null); 1173Interlocked.CompareExchange(ref _lazyDependentSemanticVersion, new AsyncLazy<VersionStamp>(c => ComputeDependentSemanticVersionAsync(tmp, c), cacheResult: true), null); 1204Interlocked.CompareExchange(ref _lazyDependentChecksum, new AsyncLazy<Checksum>(c => ComputeDependentChecksumAsync(tmp, c), cacheResult: true), null);
Workspace\Solution\SolutionState.cs (1)
108_lazyChecksums = new AsyncLazy<SolutionStateChecksums>(
Workspace\Solution\SolutionState.GeneratedFileReplacingCompilationTracker.cs (1)
125Interlocked.CompareExchange(ref _lazyDependentChecksum, new AsyncLazy<Checksum>(c => ComputeDependentChecksumAsync(tmp, c), cacheResult: true), null);
Workspace\Solution\SolutionState.SkeletonReferenceCache.cs (1)
192compilation => new AsyncLazy<SkeletonReferenceSet?>(
Workspace\Solution\SolutionState_Checksum.cs (1)
77return new AsyncLazy<SolutionStateChecksums>(
Workspace\Solution\TextDocumentState.cs (1)
55_lazyChecksums = new AsyncLazy<DocumentStateChecksums>(ComputeChecksumsAsync, cacheResult: true);
Microsoft.CodeAnalysis.Workspaces.UnitTests (2)
UtilityTest\AsyncLazyTests.cs (2)
26var lazy = new AsyncLazy<int>(c => Task.FromResult(5), cacheResult: true); 204var lazy = new AsyncLazy<object>(c => Task.Run((Func<object>)(() =>