cause -> Exception | nilRuby 2.1.0 から[permalink][rdoc][edit]-
self の前の例外(self が rescue 節や ensure 節の中で発生した例外の場合、その前に発生していた元々の例外)を返します。存在しない場合は nil を返します。
例begin begin raise "inner" rescue raise "outer" end rescue p $! # => #<RuntimeError: outer> p $!.cause # => #<RuntimeError: inner> end