class EacRubyUtils::ActsAsInstanceMethod

def default_sender_module

Returns:
  • (Module) -
def default_sender_module
  method_class.module_parent
end

def method_name

Returns:
  • (String) -
def method_name
  method_class.name.demodulize.underscore.variableize
end

def setup(sender_module = nil)

Returns:
  • (self) -

Parameters:
  • sender_module (Module, nil) --
def setup(sender_module = nil)
  sender_module ||= default_sender_module
  the_setup = self
  sender_module.define_method(method_name) do |*args, &block|
    the_setup.method_class.new(self, *args, &block).result
  end
  self
end