Module: HangingMethods::InstanceMethods

Defined in:
lib/hanging_methods.rb

Instance Method Summary collapse

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_options(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