Module: HangingMethods::InstanceMethods
- Defined in:
- lib/hanging_methods.rb
Instance Method Summary collapse
- #add_hanging_method_invocation(hanging_method_name, method_name_and_args, block) ⇒ Object
- #hanging_method_blocks(hanging_method_name) ⇒ Object
- #hanging_method_invocations(hanging_method_name) ⇒ Object
Instance Method Details
#add_hanging_method_invocation(hanging_method_name, method_name_and_args, block) ⇒ Object
30 31 32 33 34 35 36 37 |
# File 'lib/hanging_methods.rb', line 30 def add_hanging_method_invocation(hanging_method_name, method_name_and_args, block) hanging_method_invocations(hanging_method_name) << method_name_and_args hanging_method_blocks(hanging_method_name) << block ret = if after_invocation = self.method(hanging_method_name).owner.(hanging_method_name)[:after_invocation] send(after_invocation, method_name_and_args[0], *method_name_and_args[1..-1], &block) end end |
#hanging_method_blocks(hanging_method_name) ⇒ Object
44 45 46 47 |
# File 'lib/hanging_methods.rb', line 44 def hanging_method_blocks(hanging_method_name) @hanging_method_blocks ||= {} @hanging_method_blocks[hanging_method_name] ||= [] end |
#hanging_method_invocations(hanging_method_name) ⇒ Object
39 40 41 42 |
# File 'lib/hanging_methods.rb', line 39 def hanging_method_invocations(hanging_method_name) @hanging_method_invocations ||= {} @hanging_method_invocations[hanging_method_name] ||= [] end |