こんにちは、越水です。
毎度タコな質問で恐縮なのですけど、Procの中では、
なぜreturnを使うことができないのでしょうか?
Procの途中で処理を止めたいことがあったのですが、
returnが使えないので、次のように実装しました:
pr = proc {
| arg |
begin
if arg
raise StandardError.new
end
p arg
rescue
end
}
もしreturnが使えるとしたら:
pr = proc {
| proc |
if arg
return
end
p arg
}
と書けます。
越水 (greentea / fa2.so-net.ne.jp)