private static async Task <Document> RefactorAsync( Document document, StatementSyntax statement, ExpressionSyntax condition, CancellationToken cancellationToken) { SyntaxNode oldRoot = await document.GetSyntaxRootAsync(cancellationToken); SyntaxTriviaList triviaList = SyntaxFactory.TriviaList(SyntaxHelper.NewLine) .AddRange(statement.GetIndentTrivia()) .Add(SyntaxHelper.DefaultIndent); var rewriter = new SyntaxRewriter(triviaList); var newCondition = (ExpressionSyntax)rewriter.Visit(condition); StatementSyntax newStatement = SetCondition(statement, newCondition) .WithAdditionalAnnotations(Formatter.Annotation); return(document.WithSyntaxRoot(oldRoot.ReplaceNode(statement, newStatement))); }