class RSpec::Mocks::MethodDouble

def original_implementation_callable

def original_implementation_callable
  # If original method is not present, uses the `method_missing`
  # handler of the object. This accounts for cases where the user has not
  # correctly defined `respond_to?`, and also 1.8 which does not provide
  # method handles for missing methods even if `respond_to?` is correct.
  @original_implementation_callable ||= original_method ||
    Proc.new do |*args, &block|
      @object.__send__(:method_missing, @method_name, *args, &block)
    end
end