public static void AnalyzeObjectCreationExpression(SyntaxNodeAnalysisContext context)
        {
            var objectCreationExpression = (ObjectCreationExpressionSyntax)context.Node;

            if (objectCreationExpression.ContainsDiagnostics)
            {
                return;
            }

            TypeSyntax type = objectCreationExpression.Type;

            if (type?.IsMissing != false)
            {
                return;
            }

            InitializerExpressionSyntax initializer = objectCreationExpression.Initializer;

            if (initializer?.Expressions.Any() != false)
            {
                return;
            }

            if (!initializer.OpenBraceToken.TrailingTrivia.IsEmptyOrWhitespace())
            {
                return;
            }

            if (!initializer.CloseBraceToken.LeadingTrivia.IsEmptyOrWhitespace())
            {
                return;
            }

            if (initializer.IsInExpressionTree(context.SemanticModel, context.CancellationToken))
            {
                return;
            }

            context.ReportDiagnostic(DiagnosticDescriptors.RemoveEmptyInitializer, initializer);
        }