別のキーワード
種類
- インスタンスメソッド (99)
- 文書 (70)
- モジュール関数 (35)
- クラス (22)
- 関数 (11)
ライブラリ
- ビルトイン (123)
-
io
/ console (33)
クラス
- IO (33)
- LocalJumpError (22)
- Proc (44)
モジュール
- Kernel (35)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) - === (11)
-
NEWS for Ruby 3
. 0 . 0 (4) - Proc (11)
- Ruby プログラムの実行 (11)
- [] (11)
- call (11)
- cooked (11)
-
exit
_ value (11) - lambda (17)
- noecho (11)
- proc (18)
- raw (11)
-
rb
_ yield (11) - reason (11)
-
ruby 1
. 8 . 3 feature (11) -
ruby 1
. 9 feature (11) - yield (11)
- メソッド呼び出し(super・ブロック付き・yield) (11)
- 手続きオブジェクトの挙動の詳細 (11)
検索結果
先頭5件
-
LocalJumpError (38000.0)
-
ある Proc オブジェクトの作成元スコープがすでに終了しているとき、 その Proc オブジェクト内で return, break, retry のいずれかを実行すると発生します。
ある Proc オブジェクトの作成元スコープがすでに終了しているとき、
その Proc オブジェクト内で
return, break, retry のいずれかを実行すると発生します。
Proc の例を参照してください。 -
LocalJumpError
# exit _ value -> object (21040.0) -
例外 LocalJumpError を発生する原因となった break や return に渡した値を返します。
...例外 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... -
LocalJumpError
# reason -> Symbol (21024.0) -
例外を発生させた原因をシンボルで返します。
...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... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (48.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
...Proc.new { break }.call
=> ruby 1.6.8 (2002-12-24) [i586-linux]
=> -:1:in `call': break from proc-closure (LocalJumpError)
from -:1
ruby 1.8.0 (2003-06-21) [i586-linux]
* lambda および proc が返す Proc は引......break } )
=> ruby 1.6.8 (2002-12-24) [i586-linux]
[1, 2, 3]
[1, 2, 3]
-:2: break from proc-closure (LocalJumpError)
=> ruby 1.8.0 (2003-06-21) [i586-linux]
[1, 2, 3]
[1, 2, 3]
[1, 2, 3]
: ((<yield|メソッド呼び......[new]
追加。((<ruby-talk:9460>))が実装に至った経緯だと思う
=== LocalJumpError
: ((<LocalJumpError#exit_value|LocalJumpError/exit_value>)) [new]
: ((<LocalJumpError#reason|LocalJumpError/reason>)) [new]
追加
=== Marshal
: ((<Marshal/Object#marshal_load>)) [new]
: ((... -
Kernel
. # lambda -> Proc (24.0) -
与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。
...ェクトが呼び出しブロックとして振舞う際の制限です。
//emlist[問題なし][ruby]{
(1..5).each { break }
//}
//emlist[LocalJumpError が発生します。][ruby]{
pr = Proc.new { break }
(1..5).each(&pr)
//}
===[a:lambda_proc] lambda と proc と Proc.new とイテレータ......らの
return, break は例外 LocalJumpError を発生させます。
ただし、上でも説明した通り lambda で生成した手続きオブジェクトはメソッドと同じように振る舞う
ことを意図されているため、例外 LocalJumpError は発生しません。
//emlis......t[例][ruby]{
def foo
Proc.new { return }
end
foo.call
# => in `call': return from proc-closure (LocalJumpError)
//}
以下の表は、手続きオブジェクトの実行を上の例と同じように、手続きオブジェクトが定義されたメソッドを
脱出してから行った場... -
Kernel
. # lambda { . . . } -> Proc (24.0) -
与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。
...ェクトが呼び出しブロックとして振舞う際の制限です。
//emlist[問題なし][ruby]{
(1..5).each { break }
//}
//emlist[LocalJumpError が発生します。][ruby]{
pr = Proc.new { break }
(1..5).each(&pr)
//}
===[a:lambda_proc] lambda と proc と Proc.new とイテレータ......らの
return, break は例外 LocalJumpError を発生させます。
ただし、上でも説明した通り lambda で生成した手続きオブジェクトはメソッドと同じように振る舞う
ことを意図されているため、例外 LocalJumpError は発生しません。
//emlis......t[例][ruby]{
def foo
Proc.new { return }
end
foo.call
# => in `call': return from proc-closure (LocalJumpError)
//}
以下の表は、手続きオブジェクトの実行を上の例と同じように、手続きオブジェクトが定義されたメソッドを
脱出してから行った場... -
Kernel
. # proc -> Proc (24.0) -
与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。
...ェクトが呼び出しブロックとして振舞う際の制限です。
//emlist[問題なし][ruby]{
(1..5).each { break }
//}
//emlist[LocalJumpError が発生します。][ruby]{
pr = Proc.new { break }
(1..5).each(&pr)
//}
===[a:lambda_proc] lambda と proc と Proc.new とイテレータ......らの
return, break は例外 LocalJumpError を発生させます。
ただし、上でも説明した通り lambda で生成した手続きオブジェクトはメソッドと同じように振る舞う
ことを意図されているため、例外 LocalJumpError は発生しません。
//emlis......t[例][ruby]{
def foo
Proc.new { return }
end
foo.call
# => in `call': return from proc-closure (LocalJumpError)
//}
以下の表は、手続きオブジェクトの実行を上の例と同じように、手続きオブジェクトが定義されたメソッドを
脱出してから行った場... -
Kernel
. # proc { . . . } -> Proc (24.0) -
与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。
...ェクトが呼び出しブロックとして振舞う際の制限です。
//emlist[問題なし][ruby]{
(1..5).each { break }
//}
//emlist[LocalJumpError が発生します。][ruby]{
pr = Proc.new { break }
(1..5).each(&pr)
//}
===[a:lambda_proc] lambda と proc と Proc.new とイテレータ......らの
return, break は例外 LocalJumpError を発生させます。
ただし、上でも説明した通り lambda で生成した手続きオブジェクトはメソッドと同じように振る舞う
ことを意図されているため、例外 LocalJumpError は発生しません。
//emlis......t[例][ruby]{
def foo
Proc.new { return }
end
foo.call
# => in `call': return from proc-closure (LocalJumpError)
//}
以下の表は、手続きオブジェクトの実行を上の例と同じように、手続きオブジェクトが定義されたメソッドを
脱出してから行った場... -
Proc (24.0)
-
ブロックをコンテキスト(ローカル変数のスコープやスタックフ レーム)とともにオブジェクト化した手続きオブジェクトです。
...ェクトが呼び出しブロックとして振舞う際の制限です。
//emlist[問題なし][ruby]{
(1..5).each { break }
//}
//emlist[LocalJumpError が発生します。][ruby]{
pr = Proc.new { break }
(1..5).each(&pr)
//}
===[a:lambda_proc] lambda と proc と Proc.new とイテレータ......らの
return, break は例外 LocalJumpError を発生させます。
ただし、上でも説明した通り lambda で生成した手続きオブジェクトはメソッドと同じように振る舞う
ことを意図されているため、例外 LocalJumpError は発生しません。
//emlis......t[例][ruby]{
def foo
Proc.new { return }
end
foo.call
# => in `call': return from proc-closure (LocalJumpError)
//}
以下の表は、手続きオブジェクトの実行を上の例と同じように、手続きオブジェクトが定義されたメソッドを
脱出してから行った場... -
手続きオブジェクトの挙動の詳細 (24.0)
-
手続きオブジェクトの挙動の詳細 * def * should_use_next * block * lambda_proc * orphan
...ェクトが呼び出しブロックとして振舞う際の制限です。
//emlist[問題なし][ruby]{
(1..5).each { break }
//}
//emlist[LocalJumpError が発生します。][ruby]{
pr = Proc.new { break }
(1..5).each(&pr)
//}
===[a:lambda_proc] lambda と proc と Proc.new とイテレータ......らの
return, break は例外 LocalJumpError を発生させます。
ただし、上でも説明した通り lambda で生成した手続きオブジェクトはメソッドと同じように振る舞う
ことを意図されているため、例外 LocalJumpError は発生しません。
//emlis......t[例][ruby]{
def foo
Proc.new { return }
end
foo.call
# => in `call': return from proc-closure (LocalJumpError)
//}
以下の表は、手続きオブジェクトの実行を上の例と同じように、手続きオブジェクトが定義されたメソッドを
脱出してから行った場...