16 instantiations of DiagnosticData
Microsoft.CodeAnalysis.EditorFeatures.Test.Utilities (1)
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (5)
Microsoft.CodeAnalysis.Features.UnitTests (3)
Microsoft.CodeAnalysis.LanguageServer.Protocol (1)
Microsoft.CodeAnalysis.LanguageServer.Protocol.UnitTests (2)
Microsoft.CodeAnalysis.Workspaces (2)
Microsoft.VisualStudio.LanguageServices (2)
326 references to DiagnosticData
Microsoft.CodeAnalysis.EditorFeatures (19)
Microsoft.CodeAnalysis.EditorFeatures.Test.Utilities (2)
Microsoft.CodeAnalysis.EditorFeatures.UnitTests (25)
Diagnostics\DiagnosticAnalyzerServiceTests.cs (9)
187foreach (var diagnostic in diagnostics)
211Func<bool, bool, ImmutableArray<DiagnosticData>, (bool, bool)> resultSetter,
407var diagnostic = Assert.Single(applicableDiagnostics);
474var diagnostic = diagnostics.SingleOrDefault();
647var diagnostic = Assert.Single(semanticDiagnostics);
776var diagnostic = kind == AnalysisKind.Syntax ? builder.Syntax.Single().Item2.Single() : builder.Semantic.Single().Item2.Single();
823private static (bool, bool) AnalyzerResultSetter(bool syntax, bool semantic, ImmutableArray<DiagnosticData> diagnostics)
825foreach (var diagnostic in diagnostics)
834private static (bool, bool) CompilerAnalyzerResultSetter(bool syntax, bool semantic, ImmutableArray<DiagnosticData> diagnostics)
Microsoft.CodeAnalysis.ExternalAccess.Razor.Features (1)
Microsoft.CodeAnalysis.ExternalAccess.Xaml (2)
Microsoft.CodeAnalysis.Features (105)
CodeFixes\Service\CodeFixService.cs (19)
103ImmutableArray<DiagnosticData> allDiagnostics;
128var spanToErrorDiagnostics = new SortedDictionary<TextSpan, List<DiagnosticData>>();
129var spanToOtherDiagnostics = new SortedDictionary<TextSpan, List<DiagnosticData>>();
133foreach (var diagnostic in diagnostics)
155SortedDictionary<TextSpan, List<DiagnosticData>> spanToDiagnostics,
195ImmutableArray<DiagnosticData> diagnostics;
251private static async Task<ImmutableArray<DiagnosticData>> GetCopilotDiagnosticsAsync(
263private static SortedDictionary<TextSpan, List<DiagnosticData>> ConvertToMap(
264SourceText text, ImmutableArray<DiagnosticData> diagnostics)
270var spanToDiagnostics = new SortedDictionary<TextSpan, List<DiagnosticData>>();
271foreach (var diagnostic in diagnostics)
297ImmutableArray<DiagnosticData> diagnostics;
318var spanToDiagnostics = new SortedDictionary<TextSpan, List<DiagnosticData>>
448SortedDictionary<TextSpan, List<DiagnosticData>> spanToDiagnostics,
467using var _1 = PooledDictionary<CodeFixProvider, List<(TextSpan range, List<DiagnosticData> diagnostics)>>.GetInstance(out var fixerToRangesAndDiagnostics);
596List<DiagnosticData> diagnostics,
598PooledDictionary<CodeFixProvider, List<(TextSpan range, List<DiagnosticData> diagnostics)>> fixerToRangesAndDiagnostics)
712IEnumerable<DiagnosticData> diagnostics,
747IEnumerable<DiagnosticData> diagnosticsWithSameSpan,
Diagnostics\IDiagnosticAnalyzerService.cs (6)
33Task<ImmutableArray<DiagnosticData>> ForceAnalyzeProjectAsync(Project project, CancellationToken cancellationToken);
56Task<ImmutableArray<DiagnosticData>> GetDiagnosticsForIdsAsync(Project project, DocumentId? documentId, ImmutableHashSet<string>? diagnosticIds, Func<DiagnosticAnalyzer, bool>? shouldIncludeAnalyzer, bool includeLocalDocumentDiagnostics, bool includeNonLocalDocumentDiagnostics, CancellationToken cancellationToken);
73Task<ImmutableArray<DiagnosticData>> GetProjectDiagnosticsForIdsAsync(Project project, ImmutableHashSet<string>? diagnosticIds, Func<DiagnosticAnalyzer, bool>? shouldIncludeAnalyzer, bool includeNonLocalDocumentDiagnostics, CancellationToken cancellationToken);
83Task<ImmutableArray<DiagnosticData>> GetDiagnosticsForSpanAsync(
99public static Task<ImmutableArray<DiagnosticData>> GetDiagnosticsForSpanAsync(this IDiagnosticAnalyzerService service,
116public static Task<ImmutableArray<DiagnosticData>> GetDiagnosticsForSpanAsync(this IDiagnosticAnalyzerService service,
Microsoft.CodeAnalysis.Features.Test.Utilities (4)
Microsoft.CodeAnalysis.Features.UnitTests (2)
Microsoft.CodeAnalysis.LanguageServer.Protocol (42)
Extensions\ProtocolConversions.Diagnostics.cs (7)
21/// Converts from <see cref="DiagnosticData"/> to <see cref="LSP.Diagnostic"/>
29public static ImmutableArray<LSP.Diagnostic> ConvertDiagnostic(DiagnosticData diagnosticData, bool supportsVisualStudioExtensions, Project project, bool isLiveSource, bool potentialDuplicate, IGlobalOptionService globalOptionService)
95DiagnosticData diagnosticData,
161private static bool ShouldIncludeHiddenDiagnostic(DiagnosticData diagnosticData, bool supportsVisualStudioExtensions)
194private static VSDiagnosticRank? ConvertRank(DiagnosticData diagnosticData)
226private static DiagnosticTag[] ConvertTags(DiagnosticData diagnosticData, bool isLiveSource, bool potentialDuplicate)
264private static bool SupportsFadingOption(DiagnosticData diagnosticData, IGlobalOptionService globalOptionService)
Microsoft.CodeAnalysis.LanguageServer.Protocol.UnitTests (7)
Microsoft.CodeAnalysis.Remote.ServiceHub (7)
Microsoft.CodeAnalysis.Workspaces (72)
Diagnostics\DiagnosticAnalysisResult.cs (23)
29private readonly ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> _syntaxLocals;
34private readonly ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> _semanticLocals;
39private readonly ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> _nonLocals;
44private readonly ImmutableArray<DiagnosticData> _others;
48ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> syntaxLocals,
49ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> semanticLocals,
50ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> nonLocals,
51ImmutableArray<DiagnosticData> others)
70syntaxLocals: ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>>.Empty,
71semanticLocals: ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>>.Empty,
72nonLocals: ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>>.Empty,
78ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> syntaxLocalMap,
79ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> semanticLocalMap,
80ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> nonLocalMap,
81ImmutableArray<DiagnosticData> others)
105private ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>>? GetMap(AnalysisKind kind)
114public ImmutableArray<DiagnosticData> GetAllDiagnostics()
116using var result = TemporaryArray<DiagnosticData>.Empty;
132public ImmutableArray<DiagnosticData> GetDocumentDiagnostics(DocumentId documentId, AnalysisKind kind)
140public ImmutableArray<DiagnosticData> GetOtherDiagnostics()
151semanticLocals: ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>>.Empty,
152nonLocals: ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>>.Empty,
156private static void VerifyDocumentMap(Project project, ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> map)
Diagnostics\DiagnosticAnalysisResultBuilder.cs (23)
23private Dictionary<DocumentId, List<DiagnosticData>>? _lazySyntaxLocals = null;
24private Dictionary<DocumentId, List<DiagnosticData>>? _lazySemanticLocals = null;
25private Dictionary<DocumentId, List<DiagnosticData>>? _lazyNonLocals = null;
27private List<DiagnosticData>? _lazyOthers = null;
29public readonly ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> SyntaxLocals => Convert(_lazySyntaxLocals);
30public readonly ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> SemanticLocals => Convert(_lazySemanticLocals);
31public readonly ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> NonLocals => Convert(_lazyNonLocals);
32public readonly ImmutableArray<DiagnosticData> Others => _lazyOthers == null ? [] : [.. _lazyOthers];
51ref Dictionary<DocumentId, List<DiagnosticData>>? lazyLocals, DocumentId documentId, ImmutableArray<Diagnostic> diagnostics)
74AddOtherDiagnostic(DiagnosticData.Create(diagnostic, Project));
81AddOtherDiagnostic(DiagnosticData.Create(diagnostic, Project));
96private static void AddDocumentDiagnostic(ref Dictionary<DocumentId, List<DiagnosticData>>? map, TextDocument document, Diagnostic diagnostic)
102map.GetOrAdd(document.Id, static _ => []).Add(DiagnosticData.Create(diagnostic, document));
105private void AddOtherDiagnostic(DiagnosticData data)
122Dictionary<DocumentId, List<DiagnosticData>>? dummy = null;
130ref Dictionary<DocumentId, List<DiagnosticData>>? lazyLocals, SyntaxTree? tree, Diagnostic diagnostic)
143AddOtherDiagnostic(DiagnosticData.Create(diagnostic, Project));
149AddOtherDiagnostic(DiagnosticData.Create(diagnostic, Project));
167AddOtherDiagnostic(DiagnosticData.Create(diagnostic, Project));
183ref Dictionary<DocumentId, List<DiagnosticData>>? lazyLocals, SyntaxTree? tree, ImmutableArray<Diagnostic> diagnostics)
189private static ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>> Convert(Dictionary<DocumentId, List<DiagnosticData>>? map)
192? ImmutableDictionary<DocumentId, ImmutableArray<DiagnosticData>>.Empty
Microsoft.VisualStudio.LanguageServices (37)
TableDataSource\Suppression\VisualStudioSuppressionFixService.cs (19)
147private async Task<ImmutableHashSet<DiagnosticData>?> GetDiagnosticsToFixAsync(
151var diagnosticsToFix = ImmutableHashSet<DiagnosticData>.Empty;
183private bool ApplySuppressionFix(IEnumerable<DiagnosticData>? diagnosticsToFix, Func<Project, bool> shouldFixInProject, bool filterStaleDiagnostics, bool isAddSuppression, bool isSuppressionInSource, bool onlyCompilerDiagnostics, bool showPreviewChangesDialog)
190IEnumerable<DiagnosticData>? diagnosticsToFix,
360private static IEnumerable<DiagnosticData> FilterDiagnostics(IEnumerable<DiagnosticData> diagnostics, bool isAddSuppression, bool isSuppressionInSource, bool onlyCompilerDiagnostics)
362foreach (var diagnostic in diagnostics)
448private async Task<ImmutableDictionary<Document, ImmutableArray<Diagnostic>>> GetDocumentDiagnosticsToFixAsync(IEnumerable<DiagnosticData> diagnosticsToFix, Func<Project, bool> shouldFixInProject, bool filterStaleDiagnostics, CancellationToken cancellationToken)
450var builder = ImmutableDictionary.CreateBuilder<DocumentId, List<DiagnosticData>>();
451foreach (var diagnosticData in diagnosticsToFix.Where(IsDocumentDiagnostic))
470var latestDocumentDiagnosticsMap = filterStaleDiagnostics ? new Dictionary<DocumentId, ImmutableHashSet<DiagnosticData>>() : null;
505IEnumerable<DiagnosticData> documentDiagnosticsToFix;
538static bool IsDocumentDiagnostic(DiagnosticData d) => d.DocumentId != null;
541private async Task<ImmutableDictionary<Project, ImmutableArray<Diagnostic>>> GetProjectDiagnosticsToFixAsync(IEnumerable<DiagnosticData> diagnosticsToFix, Func<Project, bool> shouldFixInProject, bool filterStaleDiagnostics, CancellationToken cancellationToken)
543using var _ = CodeAnalysis.PooledObjects.PooledDictionary<ProjectId, CodeAnalysis.PooledObjects.ArrayBuilder<DiagnosticData>>.GetInstance(out var builder);
544foreach (var diagnosticData in diagnosticsToFix.Where(IsProjectDiagnostic))
551var latestDiagnosticsToFix = filterStaleDiagnostics ? new HashSet<DiagnosticData>() : null;
558IEnumerable<DiagnosticData> projectDiagnosticsToFix;
590static bool IsProjectDiagnostic(DiagnosticData d) => d.DataLocation == null;
Roslyn.VisualStudio.Next.UnitTests (1)