Using RefactoringTool::applyAllReplacements()

Hi all,
I’m building a standalone C/C++ source-to-source transformation Clang tool. I’m following Eli Bendersky’s blog and examples:

How would the example change had it actually written out the changes with RefactoringTool::applyAllReplacements(). Specifically, that method takes in a Rewriter reference. How do we create a new one? Is it correct to go through the steps to make a new SourceManager and Rewriter? Can two different SourceManager objects which were constructed using the same parameters correctly interpret the same SourceLocation object?