Method: ActionController::MimeResponds::Collector#response

Defined in:
actionpack/lib/action_controller/metal/mime_responds.rb

#responseObject



284
285
286
287
288
289
290
291
292
293
294
295
# File 'actionpack/lib/action_controller/metal/mime_responds.rb', line 284

def response
  response = @responses.fetch(format, @responses[Mime::ALL])
  if response.is_a?(VariantCollector) # `format.html.phone` - variant inline syntax
    response.variant
  elsif response.nil? || response.arity == 0 # `format.html` - just a format, call its block
    response
  else # `format.html{ |variant| variant.phone }` - variant block syntax
    variant_collector = VariantCollector.new(@variant)
    response.call(variant_collector) # call format block with variants collector
    variant_collector.variant
  end
end