Method: Showcase::Helpers::Present#present

Defined in:
lib/showcase/helpers/present.rb

#present(obj, klass = nil, context = presenter_context, options = {}) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'lib/showcase/helpers/present.rb', line 20

def present(obj, klass = nil, context = presenter_context, options = {})
  options.assert_valid_keys(:nil_presenter)

  if obj || options.fetch(:nil_presenter, false)
    klass ||= presenter_class(obj)
    if klass.nil?
      raise Showcase::PresenterClassNotFound, "Unable to guess a presenter class for #{obj.inspect}!"
    end
    klass.new(obj, context)
  else
    nil
  end
end