109件ヒット
[101-109件を表示]
(0.039秒)
別のキーワード
クラス
モジュール
- Kernel (37)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (12) - BlockCaller (12)
- Proc (12)
- lambda (18)
- new (12)
- proc (19)
- 手続きオブジェクトの挙動の詳細 (12)
検索結果
先頭1件
-
手続きオブジェクトの挙動の詳細 (54.0)
-
手続きオブジェクトの挙動の詳細 * def * should_use_next * block * lambda_proc * orphan
...変数のスコープを保持していることは以下の例で変数 var を
参照できていることからわかります。
//emlist[例][ruby]{
var = 1
$foo = Proc.new { var }
var = 2
def foo
$foo.call
end
p foo # => 2
//}
===[a:should_use_next] 手続きを中断して値を返......それ以外では Proc#call)
へジャンプし値を返すには next を使います。break や return ではありません。
//emlist[例][ruby]{
def foo
f = Proc.new{
next 1
2 # この行に到達することはない
}
end
p foo().call #=> 1
//}
===[a:bloc......う
ことを意図されているため、例外 LocalJumpError は発生しません。
//emlist[例][ruby]{
def foo
Proc.new { return }
end
foo.call
# => in `call': return from proc-closure (LocalJumpError)
//}
以下の表は、手続きオブジェクトの実行を上の例と同じよう...