class Startback::Support::Hooks
Attributes
suffix[R]
Public Class Methods
new(suffix)
click to toggle source
# File lib/startback/support/hooks.rb, line 5 def initialize(suffix) @suffix = suffix define_method :"before_#{suffix}" do self.class.__befores.each do |bl| instance_exec(&bl) end end define_method :"after_#{suffix}" do self.class.__afters.each do |bl| instance_exec(&bl) end end end
Public Instance Methods
included(by)
click to toggle source
# File lib/startback/support/hooks.rb, line 20 def included(by) by.instance_eval %Q{ def __befores(create = false) if create @__befores ||= (superclass.respond_to?(:__befores, false) ? superclass.__befores.dup : []) end @__befores || (superclass.respond_to?(:__befores, false) ? superclass.__befores : []) end def __afters(create = false) if create @__afters ||= (superclass.respond_to?(:__afters, false) ? superclass.__afters.dup : []) end @__afters || (superclass.respond_to?(:__afters, false) ? superclass.__afters : []) end def before_#{suffix}(&bl) __befores(true) << bl end def after_#{suffix}(&bl) __afters(true) << bl end } end