るりまサーチ

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

別のキーワード

  1. mkmf install_rb
  2. kernel install_rb
  3. rb_catch
  4. rb_f_catch
  5. rb_fatal

検索結果

VALUE rb_catch(const char *tag, VALUE (*proc)(), VALUE data) (38412.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...

void rb_throw(const char *tag, VALUE val) (106.0)

throw の実体。返り値を val として、 tag を catch したところまでジャンプします。

...throw の実体。返り値を val として、
tag を catch したところまでジャンプします。

rb_catch
も参照してください。...