Module: NamedArguments::MethodExtensions::ExtendedDefines

Defined in:
lib/named_arguments/method_extensions.rb

Instance Method Summary collapse

Instance Method Details

#define_method_noop(name) ⇒ Object



45
46
47
48
# File 'lib/named_arguments/method_extensions.rb', line 45

def define_method_noop name
  define_method_with_context name do
  end
end

#define_method_with_context(method_name, &block) ⇒ Object

Create a method out of a name and a lambda.

Example:

my_lambda = lambda {13}
define_method_with_context :return_13, my_lambda

assert 13 == self.return_13


24
25
26
27
28
# File 'lib/named_arguments/method_extensions.rb', line 24

def define_method_with_context method_name, &block
  sclass = class << self; self end
  sclass.send(:define_method, method_name, block)
  sclass.send(:public, method_name)
end

#define_method_with_value(name, value) ⇒ Object

Create a method out of a value and a name The method will return the value.

Example:

define_method_with_value :return_14, 14

assert 14 == self.return_14


39
40
41
42
43
# File 'lib/named_arguments/method_extensions.rb', line 39

def define_method_with_value name, value
  define_method_with_context name do
    value
  end
end