private async Task<Document> ChangeToFunc(Document document, VariableDeclarationSyntax variableDeclaration, CancellationToken cancellationToken) { // Change the variable declaration var newDeclaration = variableDeclaration.WithType(SyntaxFactory.ParseTypeName("System.Func<System.Threading.Tasks.Task>").WithAdditionalAnnotations(Simplifier.Annotation, Formatter.Annotation) .WithLeadingTrivia(variableDeclaration.Type.GetLeadingTrivia()).WithTrailingTrivia(variableDeclaration.Type.GetTrailingTrivia())); var oldRoot = await document.GetSyntaxRootAsync(cancellationToken).ConfigureAwait(false); var newRoot = oldRoot.ReplaceNode(variableDeclaration, newDeclaration); var newDocument = document.WithSyntaxRoot(newRoot); // Return document with transformed tree. return newDocument; }
private async Task<Document> MakeStaticDeclarationImplicit(Document document, VariableDeclarationSyntax variableDeclaration, CancellationToken cancellationToken) { var newVariableDeclaration = variableDeclaration.WithType(SyntaxFactory.IdentifierName("var")); newVariableDeclaration = newVariableDeclaration.WithAdditionalAnnotations(Formatter.Annotation); var oldRoot = await document.GetSyntaxRootAsync(cancellationToken); var newRoot = oldRoot.ReplaceNode(variableDeclaration, newVariableDeclaration); return document.WithSyntaxRoot(newRoot); }