| File: DiagnosticDescriptors.cs | Web Access |
| Project: src\runtime\src\tools\illink\src\ILLink.RoslynAnalyzer\ILLink.RoslynAnalyzer.csproj (ILLink.RoslynAnalyzer) |
// Copyright (c) .NET Foundation and contributors. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. using ILLink.Shared; using Microsoft.CodeAnalysis; namespace ILLink.RoslynAnalyzer { public static class DiagnosticDescriptors { public static DiagnosticDescriptor GetDiagnosticDescriptor(DiagnosticId diagnosticId) { var diagnosticString = new DiagnosticString(diagnosticId); return new DiagnosticDescriptor(diagnosticId.AsString(), diagnosticString.GetTitleFormat(), diagnosticString.GetMessageFormat(), diagnosticId.GetDiagnosticCategory(), DiagnosticSeverity.Warning, true, diagnosticId.GetHelpUri()); } public static DiagnosticDescriptor GetDiagnosticDescriptor(DiagnosticId diagnosticId, DiagnosticString diagnosticString) => new DiagnosticDescriptor(diagnosticId.AsString(), diagnosticString.GetTitle(), diagnosticString.GetMessage(), diagnosticId.GetDiagnosticCategory(), DiagnosticSeverity.Warning, true, diagnosticId.GetHelpUri()); public static DiagnosticDescriptor GetDiagnosticDescriptor(DiagnosticId diagnosticId, LocalizableResourceString? lrsTitle = null, LocalizableResourceString? lrsMessage = null, string? diagnosticCategory = null, DiagnosticSeverity diagnosticSeverity = DiagnosticSeverity.Warning, bool isEnabledByDefault = true, string? helpLinkUri = null) { helpLinkUri ??= diagnosticId.GetHelpUri(); if (lrsTitle == null || lrsMessage == null) { var diagnosticString = new DiagnosticString(diagnosticId); return new DiagnosticDescriptor(diagnosticId.AsString(), diagnosticString.GetTitleFormat(), diagnosticString.GetMessageFormat(), diagnosticCategory ?? diagnosticId.GetDiagnosticCategory(), diagnosticSeverity, isEnabledByDefault, helpLinkUri); } return new DiagnosticDescriptor(diagnosticId.AsString(), lrsTitle, lrsMessage, diagnosticCategory ?? diagnosticId.GetDiagnosticCategory(), diagnosticSeverity, isEnabledByDefault, helpLinkUri); } } }