ブロックとmethod_missing
Rubyクラスでの使用について学び始めたばかりで、一般的な式が
def method_missing(sym, *args, &block)
私の質問は&block
、出力で実行できるかどうかです。例えば:
class Foo
def method_missing(sym, *args, &block)
puts "#{sym} was called with #{args} and returned #{block.call(args)}"
end
end
bar = Foo.new
bar.test(1,2,3, lambda {|n| n + 2} )
ブロックが新しい配列を返すようにこれを機能させる方法はありますか?