[ruby 1.8]
Assume I have:
dummy "string" do
puts "thing"
end
Now, this is a call to a method which has as input arguments one string and one block. Nice.
Now assume I can have a lot of similar calls (different method names, same arguments). Example:
otherdummy "string" do
puts "thing"
end
Now because they do the same thing, and they can be hundreds, I don't want create an instance method for each one in the wanted class. I would like rather find a smart way to define the method dynamically at runtime based on a general rule.
Is that possible? Which techniques are commonly used?
Thanks
use define_method:
class Bar
end
bar_obj = Bar.new
class << bar_obj
define_method :new_dynamic_method do
puts "content goes here"
end
end
bar_obj.new_dynamic_method
Output:
content goes here
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With