Transform applies the transformation to the specified parsed file, whose type information is supplied in info, and returns the number of replacements that were made.

It mutates the AST in place (the identity of the root node is unchanged), and may add nodes for which no type information is available in info.

Derived from rewriteFile in $GOROOT/src/cmd/gofmt/rewrite.go.