class LocalJumpError
クラスの継承リスト: LocalJumpError < StandardError < Exception < Object < Kernel
要約
ある Proc オブジェクトの作成元スコープがすでに終了しているとき、 その Proc オブジェクト内で return, break, retry のいずれかを実行すると発生します。
Proc の例を参照してください。
インスタンスメソッド
exit_value -> object
-
例外 LocalJumpError を発生する原因となった break や return に渡した値を返します。
例:
def foo proc { return 10 } end begin foo.call rescue LocalJumpError => err p err # => #<LocalJumpError: return from block-closure> p err.reason # => :return p err.exit_value # => 10 end begin Block.new { break 5 }.call rescue LocalJumpError => err p err # => #<LocalJumpError: break from block-closure> p err.reason # => :break p err.exit_value # => 5 end
reason -> Symbol
-
例外を発生させた原因をシンボルで返します。
返す値は以下のいずれかです。
- :break
- :redo
- :retry
- :next
- :return
例:
def foo proc { return 10 } end begin foo.call rescue LocalJumpError => err p err # => #<LocalJumpError: return from block-closure> p err.reason # => :return p err.exit_value # => 10 end begin Block.new { break 5 }.call rescue LocalJumpError => err p err # => #<LocalJumpError: break from block-closure> p err.reason # => :break p err.exit_value # => 5 end
class LocalJumpError
- Ruby 1.8.7 リファレンスマニュアル
- はじめに
- コマンド
- Rubyの起動
- 環境変数
- Ruby言語仕様
- 組み込みライブラリ
- クラス
- モジュール
- オブジェクト
- 例外クラス
- ArgumentError
- EOFError
- Encoding::
CompatibilityError - Encoding::
ConverterNotFoundError - Encoding::
InvalidByteSequenceError - Encoding::
UndefinedConversionError - EncodingError
- Errno::EXXX
- Exception
- FiberError
- FloatDomainError
- IOError
- IndexError
- Interrupt
- KeyError
- LoadError
- LocalJumpError
- Math::DomainError
- NameError
- NoMemoryError
- NoMethodError
- NotImplementedError
- RangeError
- RegexpError
- RuntimeError
- ScriptError
- SecurityError
- SignalException
- StandardError
- StopIteration
- SyntaxError
- SystemCallError
- SystemExit
- SystemStackError
- ThreadError
- TypeError
- ZeroDivisionError
- fatal
- 組み込み関数
(Kernelモジュール関数) - 組み込み定数
(Kernel定数) - 組み込み特殊変数
- 標準添付ライブラリ
- pack テンプレート文字列
- sprintf フォーマット
- Ruby用語集
- Rubyで使われる記号の意味
- 疑似BNFによるRubyの文法
- バージョン情報 / このリファレンスについて