1

私の最終的な用途はレールで、実装するオブジェクトをアクションに割り当てていeachますresponse.body

each メソッドはかなり長いので、分解したいと思います。しかし、明示的ブロックと暗黙的ブロックのパフォーマンスの違いのため、ブロックを暗黙的に保ちたいと思います。

分解されたメソッドを元のブロックに譲るにはどうすればよいですか?

4

1 に答える 1

0

実際、質問を投稿した直後にこれを行う方法に気付きました。答えは、パラメーターを持つブロックでサブメソッドを呼び出し、パラメーターを生成することです。

def each
  submethod1 {|out| yield out}
  submethod2 {|out| yield out}
  yield "whatever"
end

def submethod1
  yield "submethod1"
end

def submethod2
  yield "submethod2"
end
于 2013-03-10T03:08:02.143 に答える