Esempio n. 1
0
        protected override void Initialize(SonarAnalysisContext context)
        {
            context.RegisterSyntaxNodeActionInNonGenerated(c =>
            {
                var classDeclaration = (ClassDeclarationSyntax)c.Node;

                var checker   = new DisposableChecker(classDeclaration, c.SemanticModel);
                var locations = checker.GetIssueLocations();
                if (locations.Any())
                {
                    c.ReportDiagnosticWhenActive(Diagnostic.Create(rule, classDeclaration.Identifier.GetLocation(),
                                                                   locations.ToAdditionalLocations(),
                                                                   locations.ToProperties()));
                }
            },
                                                           SyntaxKind.ClassDeclaration);
        }