его через .send? у тебя получится какой то другой метод типа такого
def foo
my-method.send
end
def create_dynamic_class(methods) Class.new do methods.each_pair do |name, proc| define_method(name, &proc) end end end Dynamic = create_dynamic_class( simple: Proc.new { puts 'Simple method' }, :'Ik heb in mijn broek' => Proc.new do |argument| puts "pls don't google it, btw also your argument is #{argument}" end ) Dynamic.new.simple Dynamic.new.send(:'Ik heb in mijn broek', 12) PS /home/etki> /opt/chefdk/embedded/bin/ruby /tmp/dynamic.rb Simple method pls don't google it, btw also your argument is 12
красиво, тоже думал через Proc сначала сделать
ты почему-то send хочешь вызвать на методе, а он вызывается на инстансе
почему нет? вроде на методах он тоже вызывается, как я тут сделал https://t.me/pro_rb/32549
Обсуждают сегодня