Module: Masamune::AfterInitializeCallbacks::ClassMethods
- Defined in:
- lib/masamune/after_initialize_callbacks.rb
Instance Method Summary collapse
-
#after_initialize(priority = :default, &block) ⇒ Object
Callbacks registered with the highest priority are executed first, ties are broken by callback registration order.
- #after_initialize_invoke(*a) ⇒ Object
Instance Method Details
#after_initialize(priority = :default, &block) ⇒ Object
Callbacks registered with the highest priority are executed first, ties are broken by callback registration order
38 39 40 41 |
# File 'lib/masamune/after_initialize_callbacks.rb', line 38 def after_initialize(priority = :default, &block) @after_initialize ||= Hash.new { |h, k| h[k] = [] } @after_initialize[PRIORITY.fetch(priority, 0)] << block end |
#after_initialize_invoke(*a) ⇒ Object
43 44 45 46 |
# File 'lib/masamune/after_initialize_callbacks.rb', line 43 def after_initialize_invoke(*a) @after_initialize ||= Hash.new { |h, k| h[k] = [] } @after_initialize.sort.reverse.each { |_p, x| x.each { |y| y.call(*a) } } end |