るりまサーチ (Ruby 2.6.0)

最速Rubyリファレンスマニュアル検索!
9件ヒット [1-9件を表示] (0.016秒)

別のキーワード

  1. _builtin define_method
  2. main define_method
  3. module define_method
  4. rake define_task
  5. mutex_m define_aliases

検索結果

void rb_define_method_id(VALUE klass, ID name, VALUE (*func)(), int argc) (18352.0)

klass に public メソッド name を定義します。 その実体は関数 func です。また argc の意味は rb_define_method と同じです。

klass に public メソッド name を定義します。
その実体は関数 func です。また argc の意味は
rb_define_method と同じです。

static VALUE rb_mod_define_method(int argc, VALUE *argv, VALUE mod) (18304.0)

void rb_define_method(VALUE klass, const char *name, VALUE(*func)(), int argc) (18304.0)

クラスklassのインスタンスメソッドnameを定義します。

クラスklassのインスタンスメソッドnameを定義します。

argcはCの関数へ渡される引数の数(と形式)を決めます.

: argcが0以上の時
argcで指定した値がそのメソッドの引数の数になります。
16個以上の引数は使えません,

VALUE func(VALUE self, VALUE arg1, ... VALUE argN)

: argcが-1のとき
引数はCの配列として第二引数に入れて渡されます。
第一引数は配列の要素数です。

VALUE func(int argc, VALUE *argv, VALUE...

void rb_define_global_function(const char *name, VALUE (*func)(), int argc) (52.0)

関数 name を定義します。 func と argc は rb_define_method と同じです。

...す。

例:
static VALUE
return_obj_dup(VALUE obj)
{
VALUE dup = rb_obj_dup(obj); // オブジェクトを複製
return dup;
}

void Init_func() {
rb_define_global_function("dup_obj", return_obj_dup, 1); // 関数 dup_objを定義しています。
}...

void rb_define_module_function(VALUE module, const char *name, VALUE (*func)(), int argc) (52.0)

モジュール module にモジュール関数 name を定義します。 func と argc は rb_define_method と同じです。

モジュール module にモジュール関数 name を定義します。
func と argc は rb_define_method と同じです。

絞り込み条件を変える

void rb_define_private_method(VALUE klass, const char *name, VALUE(*func)(), int argc) (52.0)

クラス klass にプライベートインスタンスメソッド name を 定義します。その実体は関数 func であり、その関数がとる 引数のタイプを argc で指定します。argc のフォーマットに ついては rb_define_method の項を参照してください。

クラス klass にプライベートインスタンスメソッド name を
定義します。その実体は関数 func であり、その関数がとる
引数のタイプを argc で指定します。argc のフォーマットに
ついては rb_define_method の項を参照してください。

void rb_define_protected_method(VALUE klass, const char *name, VALUE (*func)(), int argc) (52.0)

クラス klass に protected インスタンスメソッド name を 定義します。その実体は関数 func であり、その関数がとる 引数のタイプを argc で指定します。argc のフォーマットに ついては rb_define_method の項を参照してください。

クラス klass に protected インスタンスメソッド name を
定義します。その実体は関数 func であり、その関数がとる
引数のタイプを argc で指定します。argc のフォーマットに
ついては rb_define_method の項を参照してください。

void rb_define_singleton_method(VALUE obj, const char *name, VALUE (*func)(), int argc) (52.0)

obj に特異メソッド name を定義します。 メソッドの実体を func に関数ポインタで与え、その関数がとる 引数のタイプを argc に渡します。argc のフォーマットに ついては rb_define_method の記述を参照してください。

obj に特異メソッド name を定義します。
メソッドの実体を func に関数ポインタで与え、その関数がとる
引数のタイプを argc に渡します。argc のフォーマットに
ついては rb_define_method の記述を参照してください。

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

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

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_...