public override SyntaxNode VisitInitializerExpression(InitializerExpressionSyntax node)
        {
            var originalList = node.ChildNodesAndTokens();

            for (int i = 0; i < originalList.Count; i++)
            {
                if (!originalList[i].IsNode)
                {
                    continue;
                }

                if (AreNodesEqual(this._remover.LastCustomSelector, originalList[i].AsNode()))
                {
                    var oldToken = originalList[i + 1].AsToken();
                    var newToken = oldToken.WithTrailingTrivia(oldToken.TrailingTrivia
                                                               .Add(SyntaxExtenders.EndOfLineTrivia)
                                                               .Add(SyntaxFactory.Comment(CustomCodeCommentEnd))
                                                               .Add(SyntaxExtenders.EndOfLineTrivia));

                    return(base.VisitInitializerExpression(node.ReplaceToken(oldToken, newToken)));
                }
            }

            return(base.VisitInitializerExpression(node));
        }
        public override SyntaxNode VisitInitializerExpression(InitializerExpressionSyntax node)
        {
            var parentProperty   = node.FirstAncestorOrSelf <PropertyDeclarationSyntax>();
            var parentInvocation = node.FirstAncestorOrSelf <InvocationExpressionSyntax>();

            if (parentProperty != null && parentProperty.Identifier.Text == "SelectorExpression" ||
                parentInvocation != null && parentInvocation.ToString().Contains("SelectorExpression"))
            {
                var initializerExpressions = GenerateInitializerExpressions(_metadata, "", "p.").ToList();
                var nodeTokenList          = SyntaxFactory.NodeOrTokenList(node.ChildNodesAndTokens())
                                             .RemoveAt(node.ChildNodesAndTokens().Count - 1)
                                             .RemoveAt(0);

                foreach (var exp in initializerExpressions)
                {
                    nodeTokenList = nodeTokenList.Add(exp);
                    nodeTokenList = nodeTokenList.Add(SyntaxFactory.Token(SyntaxKind.CommaToken).AppendNewLine());
                }

                return(node.WithExpressions(SyntaxFactory.SeparatedList <ExpressionSyntax>(nodeTokenList)));
            }

            return(base.VisitInitializerExpression(node));
        }