12件ヒット
  
    
      [1-12件を表示]
    
  
    (0.080秒)
  
  
検索結果
先頭1件
- 
      Continuation (14.0)
- 
      
      
      継続を表すクラスです。 ...すクラスです。
 Kernel.#callcc { |cont| ... } の呼び出し
 は、直前の状態(ローカル変数の定義、スタックフレーム)を cont に記憶
 してブロックを実行します。cont は、Continuation クラスのインスタ
 ンスで、Continuation#call メソッドを......実行するこ
 とでいつでも記憶した状態を継続することができます。
 C 言語の setjmp()/longjmp() がわかる人は
 setjmp() == callcc {|c| }
 longjmp() == c.call
 と考えれば、わかりやすいかも知れません(ただし、callcc はスタックが深く
 な......値を返しますが、Continuation#call(args)
 が呼び出されたときは args を返します。
 例:
 以下は、Continuationによる無限ループの例
 
 def LOOP
 c = nil
 yield callcc {|cnt| c = cnt; true }
 c.call(false)
 end
 
 LOOP {|v| p v}
 
 => true
 false...

 :
:![条件を削除 [x]](/images/drop-condition-icon.png)
 :continuation
:continuation