るりまサーチ

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

別のキーワード

  1. openssl p
  2. openssl p=
  3. fileutils mkdir_p
  4. kernel p
  5. kernel $-p

ライブラリ

クラス

キーワード

検索結果

Object#extend(*modules) -> self (18198.0)

引数で指定したモジュールのインスタンスメソッドを self の特異 メソッドとして追加します。

...ールのインスタンスメソッドを self の特異
メソッドとして追加します。

Module#include は、クラス(のインスタンス)に機能を追加します
が、extend は、ある特定のオブジェクトだけにモジュールの機能を追加
したいときに使用...
...す。

@param modules モジュールを任意個指定します(クラスは不可)。
@return self を返します。

//emlist[][ruby]{
module Foo
def a
'ok Foo'
end
end

module Bar
def b
'ok Bar'
end
end

obj = Object.new
obj.extend Foo, Bar
p
obj.a #=> "ok Foo"
p
obj.b #=>...
...class Klass
include
Foo
extend
Bar
end

p
Klass.new.a #=> "ok Foo"
p
Klass.b #=> "ok Bar"
//}

extend
の機能は、「特異クラスに対する Module#include
と言い替えることもできます。
ただしその場合、フック用のメソッド
が Module#extended ではな...

Object#is_a?(mod) -> bool (49.0)

オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。

...る場合にも真を返します。
Module#includeだけではなく、Object#extendやModule#prependに
よってサブクラスのインスタンスになる場合も含みます。
上記のいずれでもない場合に false を返します。

@param mod クラスやモジュールなど、Mo...
...スタンスです。

//emlist[][ruby]{
module M
end
class C < Object
include
M
end
class S < C
end

obj = S.new
p
obj.is_a?(S) # true
p
obj.is_a?(C) # true
p
obj.is_a?(Object) # true
p
obj.is_a?(M) # true
p
obj.is_a?(Hash) # false
//}

@see Object#instance_of?,Module#===,Ob...

Object#kind_of?(mod) -> bool (49.0)

オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。

...る場合にも真を返します。
Module#includeだけではなく、Object#extendやModule#prependに
よってサブクラスのインスタンスになる場合も含みます。
上記のいずれでもない場合に false を返します。

@param mod クラスやモジュールなど、Mo...
...スタンスです。

//emlist[][ruby]{
module M
end
class C < Object
include
M
end
class S < C
end

obj = S.new
p
obj.is_a?(S) # true
p
obj.is_a?(C) # true
p
obj.is_a?(Object) # true
p
obj.is_a?(M) # true
p
obj.is_a?(Hash) # false
//}

@see Object#instance_of?,Module#===,Ob...

Object#singleton_methods(inherited_too = true) -> [Symbol] (49.0)

そのオブジェクトに対して定義されている特異メソッド名 (public あるいは protected メソッド) の一覧を返します。

...て定義されている特異メソッド名
(public あるいは protected メソッド) の一覧を返します。

inherited_too が真のときは継承した特異メソッドを含みます。
継承した特異メソッドとは Object#extend によって追加された特異メソッドや...
...

@param inherited_too 継承した特異メソッドを含める場合は真を、
そうでない場合は偽を指定します。

//emlist[例1][ruby]{
P
arent = Class.new

class <<Parent
p
rivate; def private_class_parent() end
p
rotected; def protected_class_parent()...
...def public_class_parent() end
end

Foo = Class.new(Parent)

class <<Foo
p
rivate; def private_class_foo() end
p
rotected; def protected_class_foo() end
p
ublic; def public_class_foo() end
end

module Bar
p
rivate; def private_bar() end
p
rotected; def protected_bar() end
p
ublic;...