別のキーワード
種類
- 関数 (99)
- インスタンスメソッド (88)
- 文書 (49)
- 特異メソッド (22)
- ライブラリ (11)
クラス
- Method (11)
- Module (55)
- Proc (11)
-
WIN32OLE
_ TYPE (11)
オブジェクト
- main (22)
キーワード
-
NEWS for Ruby 2
. 0 . 0 (11) -
NEWS for Ruby 2
. 1 . 0 (11) -
NEWS for Ruby 2
. 3 . 0 (9) -
NEWS for Ruby 2
. 5 . 0 (7) - Ruby用語集 (11)
-
class
_ exec (11) -
default
_ event _ sources (11) - lambda? (11)
-
method
_ added (11) -
module
_ exec (11) - parameters (11)
-
rb
_ catch (11) -
rb
_ define _ global _ function (11) -
rb
_ define _ method (11) -
rb
_ define _ method _ id (11) -
rb
_ define _ module _ function (11) -
rb
_ define _ private _ method (11) -
rb
_ define _ protected _ method (11) -
rb
_ define _ singleton _ method (11) -
rb
_ mod _ define _ method (11) -
rdoc
/ parser / c (11)
検索結果
先頭5件
-
Module
# define _ method(name) { . . . } -> Symbol (18108.0) -
インスタンスメソッド name を定義します。
...。
@raise TypeError method に同じクラス、サブクラス、モジュール以外のメソッ
ドを指定した場合に発生します。
//emlist[例][ruby]{
class Foo
def foo() p :foo end
define_method(:bar, instance_method(:foo))
end
Foo.new.bar # => :foo
//}... -
Module
# define _ method(name , method) -> Symbol (18108.0) -
インスタンスメソッド name を定義します。
...。
@raise TypeError method に同じクラス、サブクラス、モジュール以外のメソッ
ドを指定した場合に発生します。
//emlist[例][ruby]{
class Foo
def foo() p :foo end
define_method(:bar, instance_method(:foo))
end
Foo.new.bar # => :foo
//}... -
main
. define _ method(name) { . . . } -> Symbol (18108.0) -
インスタンスメソッド name を Object に定義します。
...いずれかのインスタンスを指定します。
@return メソッド名を表す Symbol を返します。
@raise TypeError method に同じクラス、サブクラス以外のメソッドを指定し
た場合に発生します。
@see Module#define_method... -
main
. define _ method(name , method) -> Symbol (18108.0) -
インスタンスメソッド name を Object に定義します。
...いずれかのインスタンスを指定します。
@return メソッド名を表す Symbol を返します。
@raise TypeError method に同じクラス、サブクラス以外のメソッドを指定し
た場合に発生します。
@see Module#define_method... -
void rb
_ define _ method _ id(VALUE klass , ID name , VALUE (*func)() , int argc) (6116.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) (6100.0) -
-
void rb
_ define _ method(VALUE klass , const char *name , VALUE(*func)() , int argc) (6100.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... -
rdoc
/ parser / c (24.0) -
C 言語で記述されたソースコードから組み込みクラス/モジュールのドキュメン トを解析するためのサブライブラリです。
...ライブラリです。
C 言語で記述された拡張ライブラリなどを解析するのに使用します。
rb_define_class や rb_define_method などで定義されたものに
対応する C 言語の関数のコメントを解析します。
例: Array#flatten の場合。rb_ary_flat......ary = rb_obj_dup(ary);
rb_ary_flatten_bang(ary);
return ary;
}
...
void
Init_Array()
{
...
rb_define_method(rb_cArray, "flatten", rb_ary_flatten, 0);
上記の例の場合、rb_ary_flatten 関数と Init_Array 関数は同じファイルに記
述......と解釈します。
また、RDoc は rb_define_method などの定義と C 言語の関数の実装が同じファ
イルにある事を前提としています。そうでない場合は以下のような指定を行います。
rb_define_method(....); // in ファイル名
例:
/*
*... -
Proc
# lambda? -> bool (18.0) -
手続きオブジェクトの引数の取扱が厳密であるならば true を返します。
...#=> true
# Module#define_method は特別扱いで、
# これで定義されたメソッドの引数は常に厳密に取り扱われる
class C
define_method(:d) {}
end
C.new.d(1,2) #=> ArgumentError
C.new.method(:d).to_proc.lambda? #=> true
class C
define_method(:e, &proc {})
end
C... -
void rb
_ define _ global _ function(const char *name , VALUE (*func)() , int argc) (16.0) -
関数 name を定義します。 func と argc は rb_define_method と同じです。
...関数 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(...