public static void Replace(Node node, Identifier oldName, Node newNode) { if (!(newNode is Expression)) throw new ArgumentException("Replace: newNode must be an Expression"); Replacer replacer = new Replacer(oldName, newNode); replacer.Visit(node); }