25 references to TypeImportCompletionCacheEntry
Microsoft.CodeAnalysis.Features (25)
Completion\Providers\ImportCompletionProvider\AbstractTypeImportCompletionService.cs (20)
29
private static readonly ConditionalWeakTable<ProjectId,
TypeImportCompletionCacheEntry
> s_projectItemsCache = new();
30
private static readonly ConditionalWeakTable<MetadataId,
TypeImportCompletionCacheEntry
> s_metadataItemsCache = new();
32
private IImportCompletionCacheService<
TypeImportCompletionCacheEntry
,
TypeImportCompletionCacheEntry
> CacheService { get; }
42
CacheService = services.GetRequiredService<IImportCompletionCacheService<
TypeImportCompletionCacheEntry
,
TypeImportCompletionCacheEntry
>>();
62
ImmutableArray<CompletionItem> GetItemsFromCacheResult(
TypeImportCompletionCacheEntry
cacheEntry)
85
private async Task<(ImmutableArray<
TypeImportCompletionCacheEntry
> results, bool isPartial)> GetCacheEntriesAsync(Project currentProject, Compilation originCompilation, bool forceCacheCreation, CancellationToken cancellationToken)
90
using var _1 = ArrayBuilder<
TypeImportCompletionCacheEntry
>.GetInstance(out var resultBuilder);
113
else if (s_projectItemsCache.TryGetValue(project.Id, out
var
cacheEntry))
135
if (TryGetUpToDateCacheForPEReference(originCompilation, solution, editorBrowsableInfo.Value, peReference, cancellationToken, out
var
upToDateCacheEntry))
140
else if (s_metadataItemsCache.TryGetValue(metadataId, out
var
cacheEntry))
179
private async Task<
TypeImportCompletionCacheEntry
> GetUpToDateCacheForProjectAsync(Project project, CancellationToken cancellationToken)
203
[NotNullWhen(true)] out
TypeImportCompletionCacheEntry
? cacheEntry)
224
private
TypeImportCompletionCacheEntry
CreateCacheWorker<TKey>(
228
ConditionalWeakTable<TKey,
TypeImportCompletionCacheEntry
> cache,
234
if (cache.TryGetValue(key, out
var
cacheEntry) && cacheEntry.Checksum == checksum)
239
using var builder = new
TypeImportCompletionCacheEntry
.Builder(SymbolKey.Create(assembly, cancellationToken), checksum, Language, GenericTypeSuffix, editorBrowsableInfo);
257
TypeImportCompletionCacheEntry
.Builder builder,
266
TypeImportCompletionCacheEntry
.Builder builder,
Completion\Providers\ImportCompletionProvider\DefaultTypeImportCompletionCacheServiceFactory.cs (4)
13
[ExportWorkspaceServiceFactory(typeof(IImportCompletionCacheService<
TypeImportCompletionCacheEntry
,
TypeImportCompletionCacheEntry
>), ServiceLayer.Default), Shared]
17
: AbstractImportCompletionCacheServiceFactory<
TypeImportCompletionCacheEntry
,
TypeImportCompletionCacheEntry
>(
Completion\Providers\ImportCompletionProvider\TypeImportCompletionCacheEntry.cs (1)
159
public
TypeImportCompletionCacheEntry
ToReferenceCacheEntry()