これが私がやりたいことです:
次のようなメソッドにブロックを渡しますGenerator.generate(...) {|x| ...}
。ブロックを保存したいのは、さまざまな場所から何度も呼び出されるサブルーチンでブロックを呼び出すためです。
確かに、すべてのメソッドと呼び出しを&blockに沿ってドラッグすることはできますが、実際にはそれをクラス変数に保存して、適切なメソッドで使用したいと思います。
このようなもの:
class Generator
class << self
attr_accessor :my_block
def generate(..., &block)
my_block = &block
....each {important_method(x)}
end
def important_method(x)
my_block.yield(x)
end
end
end
ブロックを保存し、後でいくつかの引数を使用してそれを生成することは可能ですか?