public override void TraverseChildren(IMethodCall methodCall)
        {
            var mutableMethodCall = methodCall as MethodCall;

            var callsToOverloads = reflector.From(typeof(Replace)).GetAllOverloadsOf("CallsTo");
            if (mutableMethodCall.MethodCallMatchesAnOverload(callsToOverloads))
            {
                var lambda = mutableMethodCall.Arguments[0] as AnonymousDelegate;

                var parser = new LambdaParser(lambda, host, log, registry);

                var replacement = parser.GetReplacementFactory();
                var registrar = replacement.GetRegistrar();

                registrar.RegisterReplacement();
            }

            base.TraverseChildren(methodCall);
        }