lib/keynote.rb in keynote-0.1.2 vs lib/keynote.rb in keynote-0.1.3

- old
+ new

@@ -13,10 +13,11 @@ # # @see file:README.md module Keynote class << self # Create or retrieve a presenter wrapping zero or more objects. + # If a block is given, yield the presenter into it. # # The first parameter is a Rails view context, but you'll usually access # this method through `Keynote::Helper#present`, # `Keynote::Controller#present`, or `Keynote::Presenter#present`, all of # which handle the view context parameter automatically. @@ -50,10 +51,12 @@ else name = presenter_name_from_object(objects[0]) end Cache.fetch(name, view, *objects) do - presenter_from_name(name).new(view, *objects) + presenter_from_name(name).new(view, *objects).tap do |presenter| + yield presenter if block_given? + end end end private