メモ

省略記法(def)

メソッド定義全体にかかる場合はbeginとendを省略できるようです。

def some_method
begin
# …
rescue
# …
end
end
def some_method
# …
rescue
# …
end
else, =>, ensureなどその他の文法も問題なく使えます。

省略記法(後置)

ifなどと同様、rescueでも後置記法ができます。

begin
# (1)
rescue
# (2)
end
に対応して

(1) rescue (2)
とします。 種類を指定して受けることはできませんが、特殊変数 $! によって捕まった例外を表すオブジェクトを参照できます。

http://www.namaraii.com/rubytips/?%CE%E3%B3%B0#l7
To Tumblr, Love PixelUnion