Module: Renderable::Callbacks::Defining

Defined in:
lib/renderable/callbacks.rb

Instance Method Summary collapse

Instance Method Details

#define_renderable_callbacks(*callbacks) ⇒ Object



8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/renderable/callbacks.rb', line 8

def define_renderable_callbacks(*callbacks)
  define_callbacks *[callbacks, {:terminator => renderable_terminator }].flatten
  callbacks.each do |callback|
    eval <<-end_callbacks
      def before_#{callback}(*args, &blk)
        set_callback(:#{callback}, :before, *args, &blk)
      end
      def after_#{callback}(*args, &blk)
        set_callback(:#{callback}, :after, *args, &blk)
      end
    end_callbacks
  end
end