public static Task <Document> RefactorAsync(
            Document document,
            EnumDeclarationSyntax enumDeclaration,
            CancellationToken cancellationToken)
        {
            var rewriter = new EnumDeclarationSyntaxRewriter(enumDeclaration);

            SyntaxNode newNode = rewriter.Visit(enumDeclaration)
                                 .WithFormatterAnnotation();

            return(document.ReplaceNodeAsync(enumDeclaration, newNode, cancellationToken));
        }
        private static async Task <Document> FormatEachEnumMemberOnSeparateLineAsync(
            Document document,
            EnumDeclarationSyntax enumDeclaration,
            CancellationToken cancellationToken)
        {
            SyntaxNode oldRoot = await document.GetSyntaxRootAsync(cancellationToken);

            var rewriter = new EnumDeclarationSyntaxRewriter(enumDeclaration);

            SyntaxNode newNode = rewriter.Visit(enumDeclaration)
                                 .WithAdditionalAnnotations(Formatter.Annotation);

            SyntaxNode newRoot = oldRoot.ReplaceNode(enumDeclaration, newNode);

            return(document.WithSyntaxRoot(newRoot));
        }