はじめに 最近、書籍「Effective Ruby」を購入しました。 まだ全部読み終わっていませんが、トリビア的な(?)知識がいろいろ載っていてRuby使いとしてはなかなか面白いです。 その中に catchとthrowを使ったサンプルコードが載っていたんですが、僕の場合catchとthrowって今まで使ったことがありません。 だいたいcatch/throwを使わなくても書けるんですよね~。 Effetive Rubyに載っていたコードもそんなパターンだったので、ちょっと書き直してみることにしました。 License 元のコードはBSD3ライセンスで提供されています。 Copyright and Authors ################################################################################ # This fil
![Effective Rubyのcatch/throwをproduct/findで書き換える - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/60c9b34dde353a7e0b5c46491302aed1ead02625/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9RWZmZWN0aXZlJTIwUnVieSVFMyU4MSVBRWNhdGNoJTJGdGhyb3clRTMlODIlOTJwcm9kdWN0JTJGZmluZCVFMyU4MSVBNyVFNiU5QiVCOCVFMyU4MSU4RCVFNiU4RiU5QiVFMyU4MSU4OCVFMyU4MiU4QiZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NTY2OGY1NDM2MzdmNTVjODY2NGQ4OTY2MzJmZmNkZjU%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwam5jaGl0byZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9NjRlMjg0OGE0MDdiMGU0MDE5OWU2NTllYTM3MWUyZjM%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Dae318aca593a9e893d23bca5aa5302ef)