るりまサーチ

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

別のキーワード

  1. rbconfig ruby
  2. fiddle ruby_free
  3. fiddle build_ruby_platform
  4. rake ruby
  5. rubygems/defaults ruby_engine

ライブラリ

クラス

キーワード

検索結果

Module#included(class_or_module) -> () (18144.0)

self が Module#include されたときに対象のクラスまたはモジュー ルを引数にしてインタプリタがこのメソッドを呼び出します。

...このメソッドを呼び出します。

@
param class_or_module Module#include を実行したオブジェクト

//emlist[例][ruby]{
module Foo
def self.included(mod)
p "#{mod} include #{self}"
end

end

class Bar
include Foo
end

# => "Bar include Foo"
//}

@
see Module#append_features...

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

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

...を追加します
が、extend は、ある特定のオブジェクトだけにモジュールの機能を追加
したいときに使用します。

引数に複数のモジュールを指定した場合、最後
の引数から逆順に 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 #=> "ok Bar"

class Klass
include Foo
extend Bar
end


p Klass.new.a #=> "o...
.../}

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

//emlist[][ruby]{
# obj.extend Foo, B...

Module#append_features(module_or_class) -> self (6149.0)

モジュール(あるいはクラス)に self の機能を追加します。

... Ruby で書くと以下のように定義できます。

//emlist[例][ruby]{
def include(*modules)
modules.reverse_each do |mod|
# append_features や included はプライベートメソッドなので
# 直接 mod.append_features(self) などとは書けない
mod.__send__(:append...
..._features, self)
mod.__send__(:included, self)
end

end

//}

@
see Module#included...

Module#prepended(class_or_module) -> () (6143.0)

self が Module#prepend されたときに対象のクラスまたはモジュールを 引数にしてインタプリタがこのメソッドを呼び出します。

...が Module#prepend されたときに対象のクラスまたはモジュールを
引数にしてインタプリタがこのメソッドを呼び出します。

@
param class_or_module Module#prepend を実行したオブジェクト

//emlist[例][ruby]{
module A
def self.prepended(mod)
put...
...s "#{self} prepended to #{mod}"
end

end

module Enumerable
prepend A
end

# => "A prepended to Enumerable"
//}

@
see Module#included, Module#prepend, Module#prepend_features...

Module#included_modules -> [Module] (6138.0)

self にインクルードされているモジュールの配列を返します。

...self にインクルードされているモジュールの配列を返します。

//emlist[例][ruby]{
module Mixin
end


module Outer
include Mixin
end


Mixin.included_modules #=> []
Outer.included_modules #=> [Mixin]
//}

@
see Module#ancestors...

絞り込み条件を変える

Module#>(other) -> bool | nil (73.0)

比較演算子。 self が other の先祖である場合、true を返します。 self が other の子孫か同一クラスである場合、false を返します。

...

@
param other 比較対象のモジュールやクラス

@
raise TypeError other がクラスやモジュールではない場合に発生します。

@
see Module#<

//emlist[例][ruby]{
module Awesome; end
module Included
include Awesome
end

module Prepended
prepend Awesome
end


Included
.a...
...ncestors # => [Included, Awesome]
Awesome > Included # => true
Included
> Awesome # => false

Prepended.ancestors # => [Awesome, Prepended]
Awesome > Prepended # => true
Prepended > Awesome # => false

Awesome > Awesome # => false
Awesome > Object # => nil
//}...

Module#ancestors -> [Class, Module] (43.0)

クラス、モジュールのスーパークラスとインクルードしているモジュール を優先順位順に配列に格納して返します。

...先順位順に配列に格納して返します。

//emlist[例][ruby]{
module Foo
end

class Bar
include Foo
end

class Baz < Bar
p ancestors
p included_modules
p superclass
end

# => [Baz, Bar, Foo, Object, Kernel, BasicObject]
# => [Foo, Kernel]
# => Bar
//}

@
see Module#included_modules...