ruby-uebungen/Assignment_039/solution
Thomas Smits 25d5ac7ffd Initial commit 2023-05-23 09:19:31 +02:00
..
readme.md Initial commit 2023-05-23 09:19:31 +02:00

readme.md

Lösung: Methoden dynamisch aufrufen

















































































```ruby def crazy_caller(obj) # Methoden suchen obj.methods.each do |m| # m enthält ein Symbol mit dem Namen der Methode, # wir wollen aber das Methoden-Objekt method = obj.method(m)
begin
  # Methode aufrufen, wenn sie keinen Parameter hat
  method.call {}  if method.arity == 0
rescue
end

end end

class Test def m1; puts 'm1'; end def m2; puts 'm2'; end def m3(a); puts 'm3'; end def m4(a, b); puts 'm4'; end end

crazy_caller(Test.new)