class ActionController::MimeResponds::Collector

:nodoc:

def any(*args, &block)

def any(*args, &block)
  if args.any?
    args.each { |type| send(type, &block) }
  else
    custom(Mime::ALL, &block)
  end
end

def custom(mime_type, &block)

def custom(mime_type, &block)
  mime_type = Mime::Type.lookup(mime_type.to_s) unless mime_type.is_a?(Mime::Type)
  @order << mime_type
  @responses[mime_type] ||= block
end

def initialize(mimes)

def initialize(mimes)
  @order, @responses = [], {}
  mimes.each { |mime| send(mime) }
end

def negotiate_format(request)

def negotiate_format(request)
  @format = request.negotiate_mime(order)
end

def response

def response
  @responses[format] || @responses[Mime::ALL]
end