private static void InitOrReset(IEnumerable <SuppressionManagerInitInfo> suppressionFileInfos, Func <ISuppressionFileSystemService> fileSystemServiceFabric, Func <IIOErrorProcessor> errorProcessorFabric, Func <ICustomBuildActionSetter> buildActionSetterFabric) { suppressionFileInfos = suppressionFileInfos ?? Enumerable.Empty <SuppressionManagerInitInfo>(); lock (_initializationLocker) { if (Instance == null) { ISuppressionFileSystemService fileSystemService; if (fileSystemServiceFabric == null) { IIOErrorProcessor errorProcessor = errorProcessorFabric?.Invoke(); fileSystemService = new SuppressionFileWithChangesTrackingSystemService(errorProcessor); } else { fileSystemService = fileSystemServiceFabric(); } ICustomBuildActionSetter customBuildActionSetter = buildActionSetterFabric?.Invoke(); Instance = new SuppressionManager(fileSystemService, customBuildActionSetter); } else { Instance.Clear(); } Instance.LoadSuppressionFiles(suppressionFileInfos); } }
public static void ReportDiagnosticWithSuppressionCheck(this SymbolAnalysisContext context, Diagnostic diagnostic, CodeAnalysisSettings settings) { var semanticModel = context.Compilation.GetSemanticModel(diagnostic.Location.SourceTree); SuppressionManager.ReportDiagnosticWithSuppressionCheck( semanticModel, context.ReportDiagnostic, diagnostic, settings, context.CancellationToken); }
public SuppressionFileCreator(SuppressionManager suppressionManager) { _suppressionManager = suppressionManager.CheckIfNull(nameof(suppressionManager)); }
public static void ReportDiagnosticWithSuppressionCheck(this CodeBlockAnalysisContext context, Diagnostic diagnostic, CodeAnalysisSettings settings) { SuppressionManager.ReportDiagnosticWithSuppressionCheck( context.SemanticModel, context.ReportDiagnostic, diagnostic, settings, context.CancellationToken); }