MutVisitor represents an AST modification; it accepts an AST piece and
and mutates it in place. So, for instance, macro expansion is a
that walks over an AST and modifies it.
Note: using a
MutVisitor (other than the
an AST before macro expansion is probably a bad idea. For instance,
MutVisitor renaming item names in a module will miss all of those
that are created by the expansion of a macro.