48件ヒット
[1-48件を表示]
(0.012秒)
キーワード
-
proc
_ yield (12) -
rb
_ catch (12) -
rb
_ iterate (12) -
rb
_ yield _ 0 (12)
検索結果
先頭4件
-
static VALUE proc
_ yield(VALUE proc , VALUE args) (32333.0) -
Proc.yield の実体。
...
Proc.yield の実体。... -
static VALUE rb
_ yield _ 0(VALUE val , VALUE self , VALUE klass , int pcall) (6117.0) -
カレントブロックに val を渡して処理を移す。 そのさい self とクラスを self と klass に切り替える。 Proc の呼び出しのときは pcall=非ゼロ にしなければならない。
...カレントブロックに val を渡して処理を移す。
そのさい self とクラスを self と klass に切り替える。
Proc の呼び出しのときは pcall=非ゼロ にしなければならない。... -
VALUE rb
_ iterate(VALUE (*call _ proc)() , VALUE date1 , VALUE (*block _ proc)() , date2) (225.0) -
ブロック付きメソッド(イテレータ)呼び出しを行う関数です.
...ド(イテレータ)呼び出しを行う関数です.
まず call_proc(data1) を実行します。そしてその関数か
その直下のメソッドで yield が発生すると以下が実行されます。
block_proc(VALUE block_arg, VALUE data2, VALUE self)
block_arg はブロック......引数(複数なら配列に入っている)、
data2 は rb_iterate() に渡したもの、
self は block_proc 呼び出し時点での self です。... -
VALUE rb
_ catch(const char *tag , VALUE (*proc)() , VALUE data) (137.0) -
catch と同等の動作を実行します。
...行します。
まず proc に、yield された値と data を渡して実行します。
その途中で tag が throw されたら rb_catch 全体を終了します。
throw が発生した場合はその値を返します。
throw が発生しなかったときは proc の返り値を返し......ます。
static VALUE
foo_yield(VALUE a, VALUE b)
{
return rb_yield(b);
}
static VALUE
foo_catch(VALUE obj)
{
return rb_catch("footag", foo_yield, INT2FIX(2));
}
static VALUE
foo_abort(VALUE obj)
{
return rb_throw("footag", Qnil);
}
void
Init_foo(vo...