12 types derived from AnalyzerReference
Microsoft.CodeAnalysis (4)
DiagnosticAnalyzer\AnalyzerFileReference.cs (2)
32public sealed class AnalyzerFileReference : AnalyzerReference, IEquatable<AnalyzerReference>
DiagnosticAnalyzer\AnalyzerImageReference.cs (1)
17public sealed class AnalyzerImageReference : AnalyzerReference
DiagnosticAnalyzer\UnresolvedAnalyzerReference.cs (1)
16public sealed class UnresolvedAnalyzerReference : AnalyzerReference
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (3)
CodeFixes\CodeFixServiceTests.cs (1)
413: AnalyzerReference, ICodeFixProviderFactory, SerializerService.TestAccessor.IAnalyzerReferenceWithGuid
CodeRefactorings\CodeRefactoringServiceTest.cs (1)
127private sealed class StubAnalyzerReference : AnalyzerReference, ICodeRefactoringProviderFactory
Completion\CompletionServiceTests.cs (1)
73private sealed class MockAnalyzerReference : AnalyzerReference, ICompletionProviderFactory
Microsoft.CodeAnalysis.Test.Utilities (1)
Mocks\TestAnalyzerReference.cs (1)
11internal class TestAnalyzerReference : AnalyzerReference
Microsoft.CodeAnalysis.Workspaces (1)
Workspace\IsolatedAnalyzerFileReference.cs (1)
35: AnalyzerReference
Microsoft.CodeAnalysis.Workspaces.Test.Utilities (2)
TestAnalyzerReferenceByLanguage.cs (1)
15AnalyzerReference,
TestGeneratorReference.cs (1)
16public class TestGeneratorReference : AnalyzerReference
Microsoft.VisualStudio.LanguageServices.CSharp.UnitTests (1)
EditorConfigSettings\DataProvider\DataProviderTests.MockAnalyzerReference.cs (1)
16private sealed class MockAnalyzerReference : AnalyzerReference
321 references to AnalyzerReference
AnalyzerRunner (1)
Program.cs (1)
142solution = solution.WithProjectAnalyzerReferences(projectId, ImmutableArray<AnalyzerReference>.Empty);
Microsoft.CodeAnalysis (3)
CommandLine\CommandLineArguments.cs (2)
472public IEnumerable<AnalyzerReference> ResolveAnalyzerReferences(IAnalyzerAssemblyLoader analyzerLoader) 477?? (AnalyzerReference)new UnresolvedAnalyzerReference(cmdLineReference.FilePath);
DiagnosticAnalyzer\AnalyzerFileReference.cs (1)
86public bool Equals(AnalyzerReference? other)
Microsoft.CodeAnalysis.EditorFeatures (6)
EditorConfigSettings\DataProvider\Analyzer\AnalyzerSettingsProvider.cs (4)
43using var _ = PooledDictionary<AnalyzerReference, Project>.GetInstance(out var analyzerReferenceToSomeReferencingProject); 47foreach (var analyzerReference in project.AnalyzerReferences) 51foreach (var analyzerReference in analyzerReferences) 61Project someReferencingProject, AnalyzerReference analyzerReference, AnalyzerConfigOptions editorConfigOptions, CancellationToken cancellationToken)
Preview\AbstractPreviewFactoryService.cs (2)
184foreach (var analyzer in projectChanges.GetAddedAnalyzerReferences()) 191foreach (var analyzer in projectChanges.GetRemovedAnalyzerReferences())
Microsoft.CodeAnalysis.EditorFeatures.Test.Utilities (4)
Workspaces\EditorTestHostProject.cs (3)
27IList<AnalyzerReference>? analyzerReferences = null, 58IEnumerable<AnalyzerReference>? analyzerReferences = null, 86IEnumerable<AnalyzerReference>? analyzerReferences = null,
Workspaces\EditorTestWorkspace.cs (1)
98IList<AnalyzerReference>? analyzerReferences = null,
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (8)
Diagnostics\DiagnosticAnalyzerServiceTests.cs (8)
707var analyzerProjectReference = CreateAnalyzerReferenceWithSameId(analyzerProject); 710var analyzerHostReference = CreateAnalyzerReferenceWithSameId(analyzerHost); 729static AnalyzerReference CreateAnalyzerReferenceWithSameId(DiagnosticAnalyzer analyzer) 739ImmutableArray<AnalyzerReference> AddExtraReferenceIfNeeded(AnalyzerReference mainReference, bool addExtraReference) 761var analyzerProjectReference = CreateAnalyzerReferenceWithSameId(analyzer); 762var analyzerHostReference = CreateAnalyzerReferenceWithSameId(analyzer); 779static AnalyzerReference CreateAnalyzerReferenceWithSameId(DiagnosticAnalyzer analyzer)
Microsoft.CodeAnalysis.ExternalAccess.AspNetCore (3)
EmbeddedLanguages\BraceMatching\AspNetCoreBraceMatcherExtensionProvider.cs (1)
20protected override bool TryGetExtensionsFromReference(AnalyzerReference reference, out ImmutableArray<IAspNetCoreEmbeddedLanguageBraceMatcher> extensions)
EmbeddedLanguages\Classification\AspNetCoreClassifierExtensionProvider.cs (1)
20protected override bool TryGetExtensionsFromReference(AnalyzerReference reference, out ImmutableArray<IAspNetCoreEmbeddedLanguageClassifier> extensions)
EmbeddedLanguages\DocumentHighlighting\AspNetCoreClassifierExtensionProvider.cs (1)
20protected override bool TryGetExtensionsFromReference(AnalyzerReference reference, out ImmutableArray<IAspNetCoreEmbeddedLanguageDocumentHighlighter> extensions)
Microsoft.CodeAnalysis.ExternalAccess.Razor.Features (1)
RazorMiscellaneousProjectInfoService.cs (1)
25public IEnumerable<AnalyzerReference>? GetAnalyzerReferences(Host.SolutionServices services)
Microsoft.CodeAnalysis.Features (28)
CodeFixes\Service\CodeFixService.cs (1)
45private readonly ConditionalWeakTable<IReadOnlyList<AnalyzerReference>, ImmutableDictionary<DiagnosticId, ImmutableArray<CodeFixProvider>>> _projectFixersMap = new();
CodeFixes\Service\CodeFixService.ProjectCodeFixProvider.cs (1)
18protected override bool TryGetExtensionsFromReference(AnalyzerReference reference, out ImmutableArray<CodeFixProvider> extensions)
CodeRefactorings\CodeRefactoringService.cs (1)
291protected override bool TryGetExtensionsFromReference(AnalyzerReference reference, out ImmutableArray<CodeRefactoringProvider> extensions)
Common\AbstractProjectExtensionProvider.cs (10)
25private static readonly ConditionalWeakTable<IReadOnlyList<AnalyzerReference>, StrongBox<ImmutableArray<TExtension>>> s_referencesToExtensionsMap = new(); 26private static readonly ConditionalWeakTable<AnalyzerReference, TProvider> s_referenceToProviderMap = new(); 29private AnalyzerReference Reference { get; init; } = null!; 33protected abstract bool TryGetExtensionsFromReference(AnalyzerReference reference, out ImmutableArray<TExtension> extensions); 35public static bool TryGetCachedExtensions(IReadOnlyList<AnalyzerReference> analyzerReferences, out ImmutableArray<TExtension> extensions) 55public static ImmutableArray<TExtension> GetExtensions(string language, IReadOnlyList<AnalyzerReference> analyzerReferences) 62static ImmutableArray<TExtension> GetExtensionsSlow(string language, IReadOnlyList<AnalyzerReference> analyzerReferences) 65static ImmutableArray<TExtension> ComputeExtensions(string language, IReadOnlyList<AnalyzerReference> analyzerReferences) 68foreach (var reference in analyzerReferences) 189static AnalyzerFileReference? GetAnalyzerFileReference(AnalyzerReference reference)
Completion\CompletionService.ProviderManager.cs (5)
34private readonly AsyncBatchingWorkQueue<IReadOnlyList<AnalyzerReference>> _projectProvidersWorkQueue; 42_projectProvidersWorkQueue = new AsyncBatchingWorkQueue<IReadOnlyList<AnalyzerReference>>( 45EqualityComparer<IReadOnlyList<AnalyzerReference>>.Default, 84private ValueTask ProcessBatchAsync(ImmutableSegmentedList<IReadOnlyList<AnalyzerReference>> referencesList, CancellationToken cancellationToken) 263protected override bool TryGetExtensionsFromReference(AnalyzerReference reference, out ImmutableArray<CompletionProvider> extensions)
Diagnostics\DiagnosticAnalyzerExtensions.cs (1)
47AnalyzerReference analyzerReference,
Diagnostics\IDiagnosticAnalyzerService.cs (1)
102Solution solution, ProjectId projectId, AnalyzerReference analyzerReference, string language, CancellationToken cancellationToken);
Diagnostics\Service\DiagnosticAnalyzerService.cs (2)
73private ImmutableDictionary<(ProjectId projectId, IReadOnlyList<AnalyzerReference> analyzerReferences), ProjectAnalyzerInfo> _projectAnalyzerStateMap = ImmutableDictionary<(ProjectId projectId, IReadOnlyList<AnalyzerReference> analyzerReferences), ProjectAnalyzerInfo>.Empty;
Diagnostics\Service\DiagnosticAnalyzerService.HostAnalyzerInfo.cs (2)
208foreach (var analyzerReference in hostAnalyzers.HostAnalyzerReferences) 219string Language, bool HasSdkCodeStyleAnalyzers, IReadOnlyList<AnalyzerReference> AnalyzerReferences);
Diagnostics\Service\DiagnosticAnalyzerService.ProjectStates.cs (2)
23public readonly IReadOnlyList<AnalyzerReference> AnalyzerReferences; 30IReadOnlyList<AnalyzerReference> analyzerReferences,
Diagnostics\Service\DiagnosticAnalyzerService_RemoteOrLocalDispatcher.cs (1)
42Solution solution, ProjectId projectId, AnalyzerReference analyzerReference, string language, CancellationToken cancellationToken)
Workspace\IMiscellaneousProjectInfoService.cs (1)
16IEnumerable<AnalyzerReference>? GetAnalyzerReferences(SolutionServices services);
Microsoft.CodeAnalysis.LanguageServer.Protocol.UnitTests (7)
Workspaces\LspWorkspaceManagerTests.cs (1)
691var generatorReference = await AddGeneratorAsync(new SingleFileTestGenerator(generatorText), testLspServer.TestWorkspace);
Workspaces\SourceGeneratedDocumentTests.cs (6)
156var generatorReference = await AddGeneratorAsync(new CallbackGenerator(() => ("hintName.cs", "// callCount: " + callCount++)), testLspServer.TestWorkspace); 203var generatorReference = await AddGeneratorAsync(new CallbackGenerator(() => ("hintName.cs", "// callCount: " + callCount++)), testLspServer.TestWorkspace); 241var generatorReference = await AddGeneratorAsync(new CallbackGenerator(() => ("hintName.cs", "// callCount: " + callCount++)), testLspServer.TestWorkspace); 327var generatorReference = await AddGeneratorAsync(new SingleFileTestGenerator(generatorText), testLspServer.TestWorkspace); 353var generatorReference = await AddGeneratorAsync(new SingleFileTestGenerator(generatorText), testLspServer.TestWorkspace); 389var generatorReference = await AddGeneratorAsync(new CallbackGenerator(() => ("hintName.cs", "// callCount: " + callCount++)), testLspServer.TestWorkspace);
Microsoft.CodeAnalysis.Remote.ServiceHub (12)
Host\AssetProvider.cs (2)
111tasks.Add(this.GetAssetsAsync<AnalyzerReference>( 203tasks.Add(SynchronizeProjectAssetCollectionAsync<AnalyzerReference>(new(AssetPathKind.ProjectAnalyzerReferences, projectId), static p => p.AnalyzerReferences));
Host\RemoteWorkspace.SolutionCreator.cs (2)
72var deserializedAnalyzerReferences = await _assetProvider.GetAssetsArrayAsync<AnalyzerReference>( 377var deserializedAnalyzerReferences = await _assetProvider.GetAssetsArrayAsync<AnalyzerReference>(
Services\DiagnosticAnalyzer\RemoteDiagnosticAnalyzerService.cs (2)
148var analyzerReference = project.AnalyzerReferences 186var analyzerReference = project.AnalyzerReferences
Services\SourceGeneration\RemoteSourceGenerationService.cs (6)
22using AnalyzerReferenceMap = ConditionalWeakTable<AnalyzerReference, StrongBox<SourceGeneratorPresence>>; 82AnalyzerReference analyzerReference, string language) 124() => assetProvider.GetAssetsArrayAsync<AnalyzerReference>(projectId, checksumCollection, cancellationToken), 130foreach (var analyzerReference in isolatedReferences) 159var analyzerReference = project.AnalyzerReferences 175var analyzerReference = project.AnalyzerReferences
Microsoft.CodeAnalysis.Remote.Workspaces (2)
AbstractAssetProvider.cs (2)
55var analyzerReference = await this.GetAssetsArrayAsync<AnalyzerReference>( 91var analyzerReferencesTask = this.GetAssetsArrayAsync<AnalyzerReference>(new(AssetPathKind.ProjectAnalyzerReferences, projectId), projectChecksums.AnalyzerReferences, cancellationToken);
Microsoft.CodeAnalysis.Test.Utilities (3)
Diagnostics\DiagnosticExtensions.cs (3)
409public static AnalyzerReference GetCompilerDiagnosticAnalyzerReference(string languageName) 415public static ImmutableDictionary<string, ImmutableArray<AnalyzerReference>> GetCompilerDiagnosticAnalyzerReferencesMap() 417var builder = ImmutableDictionary.CreateBuilder<string, ImmutableArray<AnalyzerReference>>();
Microsoft.CodeAnalysis.UnitTests (4)
AnalyzerAssemblyLoaderTests.cs (1)
330/// contents were required immediately then <see cref="AnalyzerReference"/> would throw in its ctor
Analyzers\AnalyzerFileReferenceTests.cs (3)
88Assert.True(refA.Equals((AnalyzerReference)refA)); 89Assert.False(refA.Equals((AnalyzerReference?)null)); 90Assert.True(refA!.Equals((AnalyzerReference)refB));
Microsoft.CodeAnalysis.Workspaces (167)
Diagnostics\DiagnosticAnalyzerInfoCache.cs (1)
19/// Provides and caches information about diagnostic analyzers such as <see cref="AnalyzerReference"/>,
Diagnostics\Extensions.cs (1)
96public static bool IsFeaturesAnalyzer(this AnalyzerReference reference)
Diagnostics\HostDiagnosticAnalyzers.cs (24)
19/// Key is <see cref="AnalyzerReference.Id"/>. 23private readonly ImmutableDictionary<object, AnalyzerReference> _hostAnalyzerReferencesMap; 34/// Key is <see cref="AnalyzerReference.Id"/>. 36/// Value is set of <see cref="DiagnosticAnalyzer"/> that belong to the <see cref="AnalyzerReference"/>. 55private readonly ConditionalWeakTable<IReadOnlyList<AnalyzerReference>, StrongBox<ImmutableDictionary<string, SkippedHostAnalyzersInfo>>> _skippedHostAnalyzers = new(); 57internal HostDiagnosticAnalyzers(IReadOnlyList<AnalyzerReference> hostAnalyzerReferences) 68/// List of host <see cref="AnalyzerReference"/>s 70public IReadOnlyList<AnalyzerReference> HostAnalyzerReferences { get; } 73/// Get <see cref="AnalyzerReference"/> identity and <see cref="DiagnosticAnalyzer"/>s map for given <paramref name="language"/> 95ImmutableDictionary<object, AnalyzerReference> map) 101if (!map.TryGetValue(id, out var reference) || reference == null) 122/// Create <see cref="AnalyzerReference"/> identity and <see cref="DiagnosticAnalyzer"/>s map for given <paramref name="project"/> that 134/// Create <see cref="AnalyzerReference"/> identity and <see cref="DiagnosticAnalyzer"/>s map for given <paramref name="project"/> that 140public ImmutableDictionary<object, ImmutableArray<DiagnosticAnalyzer>> CreateProjectDiagnosticAnalyzersPerReference(IReadOnlyList<AnalyzerReference> projectAnalyzerReferences, string language) 157private ImmutableDictionary<object, AnalyzerReference> CreateProjectAnalyzerReferencesMap(IReadOnlyList<AnalyzerReference> projectAnalyzerReferences) 221IDictionary<object, AnalyzerReference> analyzerReferencesMap, string? language = null) 240static IEnumerable<KeyValuePair<object, AnalyzerReference>> Shuffle(IDictionary<object, AnalyzerReference> source) 249using var _ = ArrayBuilder<KeyValuePair<object, AnalyzerReference>>.GetInstance(source.Count, out var builder); 261private static ImmutableDictionary<object, AnalyzerReference> CreateAnalyzerReferencesMap(IEnumerable<AnalyzerReference> analyzerReferences) 263var builder = ImmutableDictionary.CreateBuilder<object, AnalyzerReference>(); 264foreach (var reference in analyzerReferences)
Diagnostics\SkippedHostAnalyzersInfo.cs (1)
49IReadOnlyList<AnalyzerReference> projectAnalyzerReferences,
Serialization\SerializationExtensions.cs (1)
28AnalyzerReference => WellKnownSynchronizationKind.AnalyzerReference,
Serialization\SerializerService.cs (2)
71return CreateChecksum((AnalyzerReference)value); 128SerializeAnalyzerReference((AnalyzerReference)value, writer);
Serialization\SerializerService_Asset.cs (2)
91private void SerializeAnalyzerReference(AnalyzerReference reference, ObjectWriter writer) 94private AnalyzerReference DeserializeAnalyzerReference(ObjectReader reader)
Serialization\SerializerService_Reference.cs (9)
33private static IBidirectionalMap<AnalyzerReference, Guid> s_analyzerReferenceMap = BidirectionalMap<AnalyzerReference, Guid>.Empty; 41private static bool TryGetAnalyzerImageReferenceFromGuid(Guid guid, [NotNullWhen(true)] out AnalyzerReference? analyzerReference) 55protected virtual Checksum CreateChecksum(AnalyzerReference reference) 123protected virtual void WriteAnalyzerReferenceTo(AnalyzerReference reference, ObjectWriter writer) 163protected virtual AnalyzerReference ReadAnalyzerReferenceFrom(ObjectReader reader) 172Contract.ThrowIfFalse(TryGetAnalyzerImageReferenceFromGuid(guid, out var analyzerImageReference)); 555public static void AddAnalyzerImageReferences(IReadOnlyList<AnalyzerReference> analyzerReferences) 557foreach (var analyzer in analyzerReferences)
Shared\Extensions\AnalyzerReferenceExtensions.cs (1)
11public static bool HasAnalyzersOrSourceGenerators(this AnalyzerReference analyzerFileReference, string language)
SourceGeneration\IRemoteSourceGenerationService.cs (2)
56/// Returns the identities for all source generators found in the <see cref="AnalyzerReference"/> with <see 63/// Returns whether or not the the <see cref="AnalyzerReference"/> with <see cref="AnalyzerFileReference.FullPath"/>
SourceGeneratorTelemetry\ISourceGeneratorTelemetryCollectorWorkspaceService.cs (1)
14void CollectRunResult(GeneratorDriverRunResult driverRunResult, GeneratorDriverTimingInfo driverTimingInfo, Func<ISourceGenerator, AnalyzerReference> getAnalyzerReference);
SourceGeneratorTelemetry\SourceGeneratorTelemetryCollectorWorkspaceService.cs (3)
22public GeneratorTelemetryKey(ISourceGenerator generator, AnalyzerReference analyzerReference) 46private GeneratorTelemetryKey GetTelemetryKey(ISourceGenerator generator, Func<ISourceGenerator, AnalyzerReference> getAnalyzerReference) 52Func<ISourceGenerator, AnalyzerReference> getAnalyzerReference)
Workspace\CommandLineProject.cs (1)
79var unresolvedAnalyzerReferences = boundAnalyzerReferences.FirstOrDefault(r => r is UnresolvedAnalyzerReference);
Workspace\Host\Metadata\IAnalyzerAssemblyLoaderProvider.cs (1)
25/// Creates a fresh shadow copying loader that will load all <see cref="AnalyzerReference"/>s and <see
Workspace\IsolatedAnalyzerFileReference.cs (5)
27/// The purpose of this type is to allow passing out a <see cref="AnalyzerReference"/> to the rest of the system that 54/// The actual real <see cref="AnalyzerReference"/> we defer our operations to. 78private ImmutableArray<DiagnosticAnalyzer> PinAnalyzers<TArg>(Func<AnalyzerReference, TArg, ImmutableArray<DiagnosticAnalyzer>> getItems, TArg arg) 81private ImmutableArray<ISourceGenerator> PinGenerators<TArg>(Func<AnalyzerReference, TArg, ImmutableArray<ISourceGenerator>> getItems, TArg arg) 86Func<AnalyzerReference, TArg, ImmutableArray<TItem>> getItems,
Workspace\IsolatedAnalyzerReferenceSet.Core.cs (16)
91private readonly Dictionary<Checksum, ImmutableArray<AnalyzerReference>> _analyzerReferences = []; 139private ImmutableArray<AnalyzerReference> GetAnalyzerReferences(Checksum checksum) 142private static AnalyzerReference GetUnderlyingAnalyzerReference(AnalyzerReference initialReference) 149ImmutableArray<AnalyzerReference> references, 155var builder = new FixedSizeArrayBuilder<AnalyzerReference>(references.Length); 156foreach (var initialReference in references) 161var analyzerReference = GetUnderlyingAnalyzerReference(initialReference); 165var finalReference = analyzerReference is AnalyzerFileReference { FullPath: var fullPath } 197public static async partial ValueTask<ImmutableArray<AnalyzerReference>> CreateIsolatedAnalyzerReferencesAsync( 199ImmutableArray<AnalyzerReference> references, 217public static async partial ValueTask<ImmutableArray<AnalyzerReference>> CreateIsolatedAnalyzerReferencesAsync( 221Func<Task<ImmutableArray<AnalyzerReference>>> getReferencesAsync, 294ImmutableArray<AnalyzerReference> analyzerReferences, 297foreach (var initialReference in analyzerReferences) 300var analyzerReference = GetUnderlyingAnalyzerReference(initialReference);
Workspace\IsolatedAnalyzerReferenceSet.cs (4)
23public static partial ValueTask<ImmutableArray<AnalyzerReference>> CreateIsolatedAnalyzerReferencesAsync( 25ImmutableArray<AnalyzerReference> references, 35public static partial ValueTask<ImmutableArray<AnalyzerReference>> CreateIsolatedAnalyzerReferencesAsync( 39Func<Task<ImmutableArray<AnalyzerReference>>> getReferencesAsync,
Workspace\ISolutionAnalyzerSetterWorkspaceService.cs (2)
18void SetAnalyzerReferences(ImmutableArray<AnalyzerReference> references); 32public void SetAnalyzerReferences(ImmutableArray<AnalyzerReference> references)
Workspace\ProjectSystem\ProjectSystemProject.cs (4)
803foreach (var analyzerReference in project.AnalyzerReferences) 834ImmutableArray<AnalyzerReference>.CastUp(initialReferenceList.ToImmutableAndClear()), 1387IReadOnlyList<AnalyzerReference>? remainingAnalyzerReferences = null; 1423foreach (var reference in remainingAnalyzerReferences)
Workspace\ProjectSystem\ProjectSystemProjectFactory.cs (1)
47public FileWatchedReferenceFactory<AnalyzerReference> FileWatchedAnalyzerReferenceFactory { get; }
Workspace\Solution\Project.cs (5)
147public IReadOnlyList<AnalyzerReference> AnalyzerReferences => State.AnalyzerReferences; 669public Project AddAnalyzerReference(AnalyzerReference analyzerReference) 676public Project AddAnalyzerReferences(IEnumerable<AnalyzerReference> analyzerReferences) 682public Project RemoveAnalyzerReference(AnalyzerReference analyzerReference) 689public Project WithAnalyzerReferences(IEnumerable<AnalyzerReference> analyzerReferencs)
Workspace\Solution\ProjectChanges.cs (2)
37public IEnumerable<AnalyzerReference> GetAddedAnalyzerReferences() 40public IEnumerable<AnalyzerReference> GetRemovedAnalyzerReferences()
Workspace\Solution\ProjectInfo.cs (7)
140public IReadOnlyList<AnalyzerReference> AnalyzerReferences { get; } 164IReadOnlyList<AnalyzerReference> analyzerReferences, 198IEnumerable<AnalyzerReference>? analyzerReferences, 226IEnumerable<AnalyzerReference>? analyzerReferences = null, 267IEnumerable<AnalyzerReference>? analyzerReferences = null, 292IReadOnlyList<AnalyzerReference>? analyzerReferences = null, 392public ProjectInfo WithAnalyzerReferences(IEnumerable<AnalyzerReference>? analyzerReferences)
Workspace\Solution\ProjectState.cs (2)
674public IReadOnlyList<AnalyzerReference> AnalyzerReferences => this.ProjectInfo.AnalyzerReferences; 856public ProjectState WithAnalyzerReferences(IReadOnlyList<AnalyzerReference> analyzerReferences)
Workspace\Solution\Solution.cs (14)
61IReadOnlyList<AnalyzerReference> analyzerReferences, 820public Solution AddAnalyzerReference(ProjectId projectId, AnalyzerReference analyzerReference) 835public Solution AddAnalyzerReferences(ProjectId projectId, IEnumerable<AnalyzerReference> analyzerReferences) 846foreach (var analyzerReference in collection) 869public Solution RemoveAnalyzerReference(ProjectId projectId, AnalyzerReference analyzerReference) 880var builder = new FixedSizeArrayBuilder<AnalyzerReference>(oldProject.AnalyzerReferences.Count - 1); 881foreach (var reference in oldProject.AnalyzerReferences) 898public Solution WithProjectAnalyzerReferences(ProjectId projectId, IEnumerable<AnalyzerReference> analyzerReferences) 911public Solution AddAnalyzerReference(AnalyzerReference analyzerReference) 923public Solution AddAnalyzerReferences(IEnumerable<AnalyzerReference> analyzerReferences) 930foreach (var analyzerReference in collection) 947public Solution RemoveAnalyzerReference(AnalyzerReference analyzerReference) 963public Solution WithAnalyzerReferences(IEnumerable<AnalyzerReference> analyzerReferences) 1738public IReadOnlyList<AnalyzerReference> AnalyzerReferences => this.SolutionState.AnalyzerReferences;
Workspace\Solution\SolutionChanges.cs (6)
63public IEnumerable<AnalyzerReference> GetAddedAnalyzerReferences() 65var oldAnalyzerReferences = new HashSet<AnalyzerReference>(OldSolution.AnalyzerReferences); 66foreach (var analyzerReference in NewSolution.AnalyzerReferences) 75public IEnumerable<AnalyzerReference> GetRemovedAnalyzerReferences() 77var newAnalyzerReferences = new HashSet<AnalyzerReference>(NewSolution.AnalyzerReferences); 78foreach (var analyzerReference in OldSolution.AnalyzerReferences)
Workspace\Solution\SolutionCompilationState.cs (6)
735public SolutionCompilationState AddAnalyzerReferences(IReadOnlyCollection<AnalyzerReference> analyzerReferences) 743public SolutionCompilationState RemoveAnalyzerReference(AnalyzerReference analyzerReference) 751public SolutionCompilationState WithAnalyzerReferences(IReadOnlyList<AnalyzerReference> analyzerReferences) 761ProjectId projectId, IReadOnlyList<AnalyzerReference> analyzerReferences) 781var addedReferences = stateChange.NewProjectState.AnalyzerReferences.Except<AnalyzerReference>(stateChange.OldProjectState.AnalyzerReferences, ReferenceEqualityComparer.Instance).ToImmutableArray(); 782var removedReferences = stateChange.OldProjectState.AnalyzerReferences.Except<AnalyzerReference>(stateChange.NewProjectState.AnalyzerReferences, ReferenceEqualityComparer.Instance).ToImmutableArray();
Workspace\Solution\SolutionCompilationState.RegularCompilationTracker_Generators.cs (2)
356var generatorAnalyzerReference = GetAnalyzerReference(this.ProjectState, generatorResult.Generator); 431AnalyzerReference analyzerReference,
Workspace\Solution\SolutionCompilationState.TranslationAction_Actions.cs (2)
279ImmutableArray<AnalyzerReference> referencesToAdd = default, 280ImmutableArray<AnalyzerReference> referencesToRemove = default)
Workspace\Solution\SolutionCompilationState_SourceGenerators.cs (5)
25using AnalyzerReferenceMap = ConditionalWeakTable<IReadOnlyList<AnalyzerReference>, AsyncLazy<SourceGeneratorPresence>>; 31FrozenDictionary<ISourceGenerator, AnalyzerReference> SourceGeneratorToAnalyzerReference); 75private static AnalyzerReference GetAnalyzerReference(ProjectState projectState, ISourceGenerator sourceGenerator) 99using var _ = PooledDictionary<ISourceGenerator, AnalyzerReference>.GetInstance(out var generatorToAnalyzerReference); 101foreach (var reference in projectState.AnalyzerReferences)
Workspace\Solution\SolutionInfo.cs (4)
44public IReadOnlyList<AnalyzerReference> AnalyzerReferences { get; } 55IReadOnlyList<AnalyzerReference> analyzerReferences, 86IEnumerable<AnalyzerReference>? analyzerReferences = null) 97IEnumerable<AnalyzerReference>? analyzerReferences,
Workspace\Solution\SolutionState.cs (10)
52public IReadOnlyList<AnalyzerReference> AnalyzerReferences { get; } 82IReadOnlyList<AnalyzerReference> analyzerReferences, 110static Lazy<HostDiagnosticAnalyzers> CreateLazyHostDiagnosticAnalyzers(IReadOnlyList<AnalyzerReference> analyzerReferences) 119IReadOnlyList<AnalyzerReference> analyzerReferences, 190IReadOnlyList<AnalyzerReference>? analyzerReferences = null, 926public StateChange WithProjectAnalyzerReferences(ProjectId projectId, IReadOnlyList<AnalyzerReference> analyzerReferences) 1240public SolutionState AddAnalyzerReferences(IReadOnlyCollection<AnalyzerReference> analyzerReferences) 1252public SolutionState RemoveAnalyzerReference(AnalyzerReference analyzerReference) 1264public SolutionState WithAnalyzerReferences(IReadOnlyList<AnalyzerReference> analyzerReferences) 1408internal bool ContainsAnalyzerReference(ProjectId projectId, AnalyzerReference analyzerReference)
Workspace\Solution\SourceGeneratedDocumentIdentity.cs (1)
36public static SourceGeneratedDocumentIdentity Generate(ProjectId projectId, string hintName, ISourceGenerator generator, string filePath, AnalyzerReference analyzerReference)
Workspace\Solution\SourceGeneratorIdentity.cs (2)
29public static SourceGeneratorIdentity Create(ISourceGenerator generator, AnalyzerReference analyzerReference) 39AnalyzerReference analyzerReference, string language)
Workspace\Workspace.cs (17)
136private Solution CreateSolution(SolutionInfo solutionInfo, SolutionOptionSet options, IReadOnlyList<AnalyzerReference> analyzerReferences, ImmutableDictionary<string, StructuredAnalyzerConfigOptions> fallbackAnalyzerOptions) 968protected internal void OnAnalyzerReferenceAdded(ProjectId projectId, AnalyzerReference analyzerReference) 980protected internal void OnAnalyzerReferenceRemoved(ProjectId projectId, AnalyzerReference analyzerReference) 992internal void OnSolutionAnalyzerReferenceAdded(AnalyzerReference analyzerReference) 1004internal void OnSolutionAnalyzerReferenceRemoved(AnalyzerReference analyzerReference) 1600foreach (var analyzerReference in solutionChanges.GetRemovedAnalyzerReferences()) 1605foreach (var analyzerReference in solutionChanges.GetAddedAnalyzerReferences()) 1903foreach (var analyzerReference in projectChanges.GetRemovedAnalyzerReferences()) 1909foreach (var analyzerReference in projectChanges.GetAddedAnalyzerReferences()) 2158protected virtual void ApplyAnalyzerReferenceAdded(ProjectId projectId, AnalyzerReference analyzerReference) 2169protected virtual void ApplyAnalyzerReferenceRemoved(ProjectId projectId, AnalyzerReference analyzerReference) 2180internal void ApplySolutionAnalyzerReferenceAdded(AnalyzerReference analyzerReference) 2191internal void ApplySolutionAnalyzerReferenceRemoved(AnalyzerReference analyzerReference) 2421protected void CheckProjectHasAnalyzerReference(ProjectId projectId, AnalyzerReference analyzerReference) 2432protected void CheckProjectDoesNotHaveAnalyzerReference(ProjectId projectId, AnalyzerReference analyzerReference) 2443internal static void CheckSolutionHasAnalyzerReference(Solution solution, AnalyzerReference analyzerReference) 2454internal static void CheckSolutionDoesNotHaveAnalyzerReference(Solution solution, AnalyzerReference analyzerReference)
Microsoft.CodeAnalysis.Workspaces.MSBuild (8)
MSBuild\MSBuildProjectLoader.Worker.AnalyzerReferencePathComparer.cs (4)
15private sealed class AnalyzerReferencePathComparer : IEqualityComparer<AnalyzerReference?> 21public bool Equals(AnalyzerReference? x, AnalyzerReference? y) 24public int GetHashCode(AnalyzerReference? obj)
MSBuild\MSBuildProjectLoader.Worker.cs (2)
210IEnumerable<AnalyzerReference> analyzerReferences; 317private IEnumerable<AnalyzerReference> ResolveAnalyzerReferences(CommandLineArguments commandLineArgs)
MSBuild\MSBuildWorkspace.cs (2)
678protected override void ApplyAnalyzerReferenceAdded(ProjectId projectId, AnalyzerReference analyzerReference) 690protected override void ApplyAnalyzerReferenceRemoved(ProjectId projectId, AnalyzerReference analyzerReference)
Microsoft.CodeAnalysis.Workspaces.Test.Utilities (18)
Remote\TestSerializerService.cs (3)
66protected override Checksum CreateChecksum(AnalyzerReference reference) 85protected override void WriteAnalyzerReferenceTo(AnalyzerReference reference, ObjectWriter writer) 100protected override AnalyzerReference ReadAnalyzerReferenceFrom(ObjectReader reader)
TestGeneratorReference.cs (1)
13/// A simple deriviation of <see cref="AnalyzerReference"/> that returns the source generator
Workspaces\TestHostProject.cs (3)
50IEnumerable<AnalyzerReference> analyzerReferences = null, 70IList<AnalyzerReference> analyzerReferences = null, 100IEnumerable<AnalyzerReference> analyzerReferences = null,
Workspaces\TestHostProject`1.cs (6)
27private readonly IEnumerable<AnalyzerReference> _analyzerReferences; 46public IEnumerable<AnalyzerReference> AnalyzerReferences 103IList<AnalyzerReference> analyzerReferences = null, 113_analyzerReferences = analyzerReferences ?? SpecializedCollections.EmptyEnumerable<AnalyzerReference>(); 136IEnumerable<AnalyzerReference> analyzerReferences = null, 154_analyzerReferences = analyzerReferences ?? SpecializedCollections.EmptyEnumerable<AnalyzerReference>();
Workspaces\TestWorkspace.cs (1)
90IList<AnalyzerReference>? analyzerReferences = null,
Workspaces\TestWorkspace_XmlConsumption.cs (2)
821private static IList<AnalyzerReference> CreateAnalyzerList(XElement projectElement) 823var analyzers = new List<AnalyzerReference>();
Workspaces\TestWorkspace`1.cs (2)
211IList<AnalyzerReference>? analyzerReferences = null, 288public new void OnAnalyzerReferenceAdded(ProjectId projectId, AnalyzerReference analyzerReference)
Microsoft.CodeAnalysis.Workspaces.UnitTests (21)
CommandLineProject\CommandLineProjectTests.cs (2)
152var analyzerRef = info.AnalyzerReferences.Single(); 166var analyzerRef = info.AnalyzerReferences.Single();
SolutionTests\ProjectInfoTests.cs (5)
153Assert.Same(analyzerReference, ((ImmutableArray<AnalyzerReference>)info1.AnalyzerReferences).Single()); 156Assert.True(((ImmutableArray<AnalyzerReference>)info2.AnalyzerReferences).IsEmpty); 159Assert.True(((ImmutableArray<AnalyzerReference>)info3.AnalyzerReferences).IsEmpty); 162Assert.True(((ImmutableArray<AnalyzerReference>)info4.AnalyzerReferences).IsEmpty); 202SolutionTestHelpers.TestListProperty(instance, (old, value) => old.WithAnalyzerReferences(value), opt => opt.AnalyzerReferences, (AnalyzerReference)new TestAnalyzerReference(), allowDuplicates: false);
SolutionTests\SolutionTests.cs (11)
2209var analyzerRef = (AnalyzerReference)new TestAnalyzerReference(); 2228var solution2 = solution.AddAnalyzerReferences(projectId, EmptyEnumerable<AnalyzerReference>()); 2235AssertEx.Equal((AnalyzerReference[])[analyzerRef1, analyzerRef2], solution3.GetProject(projectId)!.AnalyzerReferences); 2261AssertEx.Equal((AnalyzerReference[])[analyzerRef2], solution2.GetProject(projectId)!.AnalyzerReferences); 2281var analyzerRef = (AnalyzerReference)new TestAnalyzerReference(); 2296var solution2 = solution.AddAnalyzerReferences(EmptyEnumerable<AnalyzerReference>()); 2303AssertEx.Equal((AnalyzerReference[])[analyzerRef1, analyzerRef2], solution3.AnalyzerReferences); 2327AssertEx.Equal((AnalyzerReference[])[analyzerRef2], solution2.AnalyzerReferences); 3196var addedAnalyzerReference = changes.GetAddedAnalyzerReferences().Single();
SolutionTests\SolutionWithSourceGeneratorTests.cs (3)
106private sealed class TestGeneratorReferenceWithFilePathEquality : TestGeneratorReference, IEquatable<AnalyzerReference> 113public override bool Equals(object? obj) => Equals(obj as AnalyzerReference); 117public bool Equals(AnalyzerReference? other)
Microsoft.VisualStudio.LanguageServices (7)
Diagnostics\VisualStudioDiagnosticAnalyzerProvider.WorkspaceEventListener.cs (1)
60setter.SetAnalyzerReferences(references.SelectAsArray(referenceAndId => (AnalyzerReference)referenceAndId.reference));
Preview\ReferenceChange.AnalyzerReferenceChange.cs (2)
14private readonly AnalyzerReference _reference; 16public AnalyzerReferenceChange(AnalyzerReference reference, ProjectId projectId, string projectName, bool isAdded, PreviewEngine engine)
ProjectSystem\VisualStudioWorkspaceImpl.cs (3)
429private static string? GetAnalyzerPath(AnalyzerReference analyzerReference) 467protected override void ApplyAnalyzerReferenceAdded(ProjectId projectId, AnalyzerReference analyzerReference) 489protected override void ApplyAnalyzerReferenceRemoved(ProjectId projectId, AnalyzerReference analyzerReference)
ProjectSystem\VisualStudioWorkspaceImpl.SolutionAnalyzerSetterService.cs (1)
28public void SetAnalyzerReferences(ImmutableArray<AnalyzerReference> references)
Microsoft.VisualStudio.LanguageServices.CSharp.UnitTests (1)
ProjectSystemShim\CPS\CSharpReferencesTests.cs (1)
140.AnalyzerReferences.Cast<AnalyzerReference>()
Microsoft.VisualStudio.LanguageServices.Implementation (16)
SolutionExplorer\AnalyzerItem\AnalyzerItem.cs (3)
14AnalyzerReference analyzerReference, 19public AnalyzerReference AnalyzerReference { get; } = analyzerReference; 38private static string GetNameText(AnalyzerReference analyzerReference)
SolutionExplorer\AnalyzerItem\AnalyzerItemSource.cs (5)
35private IReadOnlyCollection<AnalyzerReference>? _analyzerReferences; 133foreach (var analyzerReference in references.OrderBy(static r => r.Display)) 143async Task<ImmutableArray<AnalyzerReference>> GetAnalyzerReferencesWithAnalyzersOrGeneratorsAsync( 155using var _ = ArrayBuilder<AnalyzerReference>.GetInstance(out var builder); 156foreach (var reference in project.AnalyzerReferences)
SolutionExplorer\DiagnosticItem\BaseDiagnosticAndGeneratorItemSource.cs (3)
64protected AnalyzerReference? AnalyzerReference 91var analyzerReference = this.AnalyzerReference; 143AnalyzerReference analyzerReference,
SolutionExplorer\DiagnosticItem\CpsDiagnosticItemSource.cs (3)
57var analyzerReference = TryGetAnalyzerReference(Workspace.CurrentSolution); 102var analyzerReference = TryGetAnalyzerReference(e.NewSolution); 113private AnalyzerReference? TryGetAnalyzerReference(Solution solution)
SolutionExplorer\DiagnosticItem\DiagnosticItem.cs (2)
21AnalyzerReference analyzerReference, 27private readonly AnalyzerReference _analyzerReference = analyzerReference;
Roslyn.VisualStudio.Next.UnitTests (1)
Remote\SerializationValidator.cs (1)
167await VerifyAssetSerializationAsync<AnalyzerReference>(