4 types derived from ValueSource
Microsoft.CodeAnalysis.Workspaces (3)
AsyncLazy`1.cs (1)
34internal sealed class AsyncLazy<T> : ValueSource<T>
Workspace\Solution\ConstantTextAndVersionSource.cs (1)
16internal sealed class ConstantTextAndVersionSource : ValueSource<TextAndVersion>, ITextAndVersionSource
Workspace\Solution\WeaklyCachedRecoverableValueSource.cs (1)
20internal abstract class WeaklyCachedRecoverableValueSource<T> : ValueSource<T> where T : class
Microsoft.VisualStudio.LanguageServices (1)
ProjectSystem\MetadataReferences\VisualStudioMetadataReferenceManager.RecoverableMetadataValueSource.cs (1)
22private sealed class RecoverableMetadataValueSource : ValueSource<AssemblyMetadata>
54 references to ValueSource
Microsoft.CodeAnalysis.Workspaces (46)
ValueSource.cs (5)
21public static ValueSource<T> Constant(T value) 27public static ValueSource<T> Constant<T>(T value) 28=> ValueSource<T>.Constant(value); 39internal static T? GetValueOrNull<T>(this ValueSource<Optional<T>> optional, CancellationToken cancellationToken = default) where T : class 42internal static T GetValueOrDefault<T>(this ValueSource<Optional<T>> optional, CancellationToken cancellationToken = default) where T : struct
Workspace\Solution\AnalyzerConfigDocumentState.cs (2)
17private readonly ValueSource<AnalyzerConfig> _analyzerConfigValueSource; 39private ValueSource<AnalyzerConfig> CreateAnalyzerConfigValueSource()
Workspace\Solution\DocumentState.cs (12)
34private readonly ValueSource<TreeAndVersion>? _treeSource; 43ValueSource<TreeAndVersion>? treeSource) 82public ValueSource<TreeAndVersion>? TreeSource => _treeSource; 100protected static ValueSource<TreeAndVersion> CreateLazyFullyParsedTree( 166private static ValueSource<TreeAndVersion> CreateLazyIncrementallyParsedTree( 167ValueSource<TreeAndVersion> oldTreeSource, 178ValueSource<TreeAndVersion> oldTreeSource, 200ValueSource<TreeAndVersion> oldTreeSource, 307var newTreeSource = SupportsSyntaxTree ? CreateLazyFullyParsedTree( 349ValueSource<TreeAndVersion>? newTreeSource = null; 431var newTreeSource = SupportsSyntaxTree ? 460ValueSource<TreeAndVersion>? newTreeSource;
Workspace\Solution\DocumentState_LinkedFileReuse.cs (8)
22public DocumentState UpdateTextAndTreeContents(ITextAndVersionSource siblingTextSource, ValueSource<TreeAndVersion>? siblingTreeSource) 53var treeSource = this.TreeSource; 72ValueSource<TreeAndVersion> treeSource, 74ValueSource<TreeAndVersion> siblingTreeSource) 180ValueSource<TreeAndVersion> treeSource, 182ValueSource<TreeAndVersion> siblingTreeSource, 202ValueSource<TreeAndVersion> treeSource, 204ValueSource<TreeAndVersion> siblingTreeSource,
Workspace\Solution\DocumentState_TreeTextSource.cs (2)
20private readonly ValueSource<SourceText> _textSource; 26public TreeTextSource(ValueSource<SourceText> textSource, VersionStamp version)
Workspace\Solution\ProjectState.cs (8)
54private readonly ValueSource<ProjectStateChecksums> _lazyChecksums; 59private readonly ValueSource<AnalyzerConfigOptionsCache> _lazyAnalyzerConfigOptions; 76ValueSource<AnalyzerConfigOptionsCache> lazyAnalyzerConfigSet) 442private readonly ValueSource<AnalyzerConfigOptionsCache> _lazyAnalyzerConfigSet; 444public ProjectSyntaxTreeOptionsProvider(ValueSource<AnalyzerConfigOptionsCache> lazyAnalyzerConfigSet) 477private static ValueSource<AnalyzerConfigOptionsCache> ComputeAnalyzerConfigOptionsValueSource(TextDocumentStates<AnalyzerConfigDocumentState> analyzerConfigDocumentStates) 608ValueSource<AnalyzerConfigOptionsCache>? analyzerConfigSet = null) 815var newAnalyzerConfigSet = ComputeAnalyzerConfigOptionsValueSource(newAnalyzerConfigDocumentStates);
Workspace\Solution\SolutionState.cs (2)
55private readonly ValueSource<SolutionStateChecksums> _lazyChecksums; 61private readonly Dictionary<ProjectId, ValueSource<SolutionStateChecksums>> _lazyProjectChecksums = new();
Workspace\Solution\SolutionState_Checksum.cs (3)
28ValueSource<SolutionStateChecksums>? checksums; 58ValueSource<SolutionStateChecksums>? checksums; 72ValueSource<SolutionStateChecksums> Compute(ProjectId projectId)
Workspace\Solution\SourceGeneratedDocumentState.cs (2)
26var treeSource = CreateLazyFullyParsedTree( 59ValueSource<TreeAndVersion> treeSource)
Workspace\Solution\TextDocumentState.cs (1)
26private readonly ValueSource<DocumentStateChecksums> _lazyChecksums;
Workspace\Solution\WeaklyCachedRecoverableValueSource.cs (1)
15/// This class is a <see cref="ValueSource{T}"/> that holds onto a value weakly, but can save its value and recover
Microsoft.VisualStudio.LanguageServices (8)
ProjectSystem\MetadataReferences\VisualStudioMetadataReferenceManager.cs (4)
46private static readonly ConditionalWeakTable<ValueSource<AssemblyMetadata>, IReadOnlyList<TemporaryStorageService.TemporaryStreamStorage>> s_valueSourceToStorages = new(); 96if (_metadataCache.TryGetSource(key, out var source) && 150(AssemblyMetadata newMetadata, ValueSource<AssemblyMetadata> newMetadataValueSource) GetMetadataWorker() 172var valueSource = _configurationService.Options.DisableReferenceManagerRecoverableMetadata
ProjectSystem\MetadataReferences\VisualStudioMetadataReferenceManager.MetadataCache.cs (4)
22private readonly Dictionary<FileKey, ValueSource<AssemblyMetadata>> _metadataCache = new(); 34public bool TryGetSource(FileKey key, [NotNullWhen(true)] out ValueSource<AssemblyMetadata>? source) 44if (_metadataCache.TryGetValue(key, out var metadataSource)) 63public bool GetOrAddMetadata(FileKey key, ValueSource<AssemblyMetadata> metadataSource, out AssemblyMetadata metadata)