るりまサーチ

最速Rubyリファレンスマニュアル検索!
33件ヒット [1-33件を表示] (0.081秒)
トップページ > クエリ:l[x] > クエリ:rb_yield[x]

別のキーワード

  1. mkmf install_rb
  2. kernel install_rb
  3. rb_yield
  4. rb_yield_0
  5. rb_f_end

キーワード

検索結果

VALUE rb_yield(VALUE val) (44300.0)

yield の C 版です.val を引数にブロックを実行します. 複数の引数を与えたいときは配列に格納して渡します。

...yield の C 版です.val を引数にブロックを実行します.
複数の引数を与えたいときは配列に格納して渡します。

この関数を呼び出したメソッドがブロックを伴わない場合は,例外
L
ocalJumpError が発生します....

static VALUE rb_yield_0(VALUE val, VALUE self, VALUE klass, int pcall) (12500.0)

カレントブロックに val を渡して処理を移す。 そのさい self とクラスを self と klass に切り替える。 Proc の呼び出しのときは pcall=非ゼロ にしなければならない。

...カレントブロックに val を渡して処理を移す。
そのさい self とクラスを self と klass に切り替える。
Proc の呼び出しのときは pcall=非ゼロ にしなければならない。...

VALUE rb_catch(const char *tag, VALUE (*proc)(), VALUE data) (306.0)

catch と同等の動作を実行します。

...ield された値と data を渡して実行します。
その途中で tag が throw されたら rb_catch 全体を終了します。

throw が発生した場合はその値を返します。
throw が発生しなかったときは proc の返り値を返します。

static VALUE
foo_yield(...
...ALUE 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(void)
{
VALUE Foo = rb_define_cla...