るりまサーチ

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

別のキーワード

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

クラス

キーワード

検索結果

Module#define_method(name) { ... } -> Symbol (24211.0)

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

...スタンスメソッド name を定義します。

ブロックを与えた場合、定義したメソッドの実行時にブロックが
レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。

@param name メソッド名を String または Symbol を指定...
...します。

@param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。

@return メソッド名を表す Symbol を返します。

@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 (24211.0)

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

...スタンスメソッド name を定義します。

ブロックを与えた場合、定義したメソッドの実行時にブロックが
レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。

@param name メソッド名を String または Symbol を指定...
...します。

@param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。

@return メソッド名を表す Symbol を返します。

@raise TypeError method に同じクラス、サブクラス、モジュール以外のメソッ...
...ドを指定した場合に発生します。

//emlist[例][ruby]{
class Foo
def foo() p :foo end
define_method
(:bar, instance_method(:foo))
end
Foo.new.bar # => :foo
//}...

Module#method_added(name) -> () (109.0)

メソッド name が追加された時にインタプリタがこのメソッドを呼び出します。

...メソッド name が追加された時にインタプリタがこのメソッドを呼び出します。

特異メソッドの追加に対するフックには
BasicObject#singleton_method_added
を使います。

@param name 追加されたメソッドの名前が Symbol で渡されます。...
...//emlist[例][ruby]{
class Foo
def Foo.method_added(name)
puts "method \"#{name}\" was added"
end

def foo
end
define_method
:bar, instance_method(:foo)
end

# => method "foo" was added
# method "bar" was added
//}...

Proc#lambda? -> bool (51.0)

手続きオブジェクトの引数の取扱が厳密であるならば true を返します。

...# Proc.new で生成した Proc オブジェクトでは false
Proc.new{}.lambda? # => false

# 以下、lambda?が偽である場合
# 余分な引数を無視する
proc{|a,b| [a,b]}.call(1,2,3) # => [1,2]
# 足りない引数には nil が渡される
proc{|a,b| [a,b]}.call(1) # => [1, nil]
#...
...
proc{|a,b| [a,b]}.call([1,2]) # => [1,2]
# lambdaの場合これらはすべて ArgumentError となる

# &が付いた仮引数で生成される Proc は lambda? が偽となる
def n(&b) b.lambda? end
n
{} # => false

# &が付いた実引数によるものは、lambda?が元の Procオブ...
...{}).lambda? #=> true
Proc.new(&lambda {}).lambda? #=> true

lambda(&proc {}).lambda? #=> false
proc(&proc {}).lambda? #=> false
Proc.new(&proc {}).lambda? #=> false

n
(&lambda {}) #=> true
n
(&proc {}) #=> false
n
(&Proc.new {}) #=> false...