るりまサーチ

最速Rubyリファレンスマニュアル検索!
312件ヒット [1-100件を表示] (0.034秒)
トップページ > クエリ:Module[x] > クエリ:extend[x]

別のキーワード

  1. module attr
  2. module protected
  3. module public
  4. module private
  5. module new

検索結果

<< 1 2 3 ... > >>

Module#extended(obj) -> () (27174.0)

self が他のオブジェクト に Object#extend されたときに 呼ばれます。引数には extend を行ったオブジェクトが渡されます。

...bject#extend されたときに
呼ばれます。引数には extend を行ったオブジェクトが渡されます。

@param obj Object#extend を行ったオブジェクト

//emlist[例][ruby]{
module
Foo
def self.extended(obj)
p "#{obj} extend #{self}"
end
end

Object.new.extend Foo...
...# => "#<Object:0x401cbc3c> extend Foo"
//}

@see Module#extend_object...

Module#extend_object(obj) -> object (27159.0)

Object#extend の実体です。オブジェクトにモジュールの機能を追加します。

...Object#extend の実体です。オブジェクトにモジュールの機能を追加します。

Object#extend は、Ruby で書くと以下のように定義できます。

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

extend
_object のデフォルトの実装では、self に定義されて
いるインスタンスメソッドを obj...
...の特異メソッドとして追加します。

@param obj self の機能を追加するオブジェクトを指定します。

@return obj で指定されたオブジェクトを返します。

@see Module#extended...

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

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

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

Module
#include は、クラス(のインスタンス)に機能を追加します
が、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...
...clude Foo
extend
Bar
end

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

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

Mutex_m.extend_object(module) -> Module (6315.0)

ユーザが直接、使うことはありません。

...ユーザが直接、使うことはありません。

@see Module#extend_object...

void rb_extend_object(VALUE obj, VALUE module) (6200.0)

絞り込み条件を変える

1.6.8から1.8.0への変更点(まとめ) (438.0)

1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))

...いう振
るまい(C の do ... while 構文と同じ)をしていませんでした。
((<ruby-list:34618>))

: ((<"rescue/ensure on class/module"|クラス/メソッドの定義/クラス定義>)) [compat]

メソッド定義のほかにもクラス定義やモジュール定義にもresc...
...クラスと発生した例外オブジェクトの比較 [ruby] [change]

発生した例外 $! と rescue 節の例外クラスとは ((<Module#===|Module/===>))
を使って比較するようになりました。

以前は kind_of? による比較なので基本的な動作に変わりは...
...uby-bugs-ja:PR#406>)))

=== Module

: ((<Module#include|Module/include>)) [change]

トップレベルの include は、第二引数に true を指定した load でロード
されるスクリプトのもとではモジュールの機能を self に
((<Object/extend>)) するように変更...

ruby 1.6 feature (162.0)

ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。

...01) [i586-linux]
""

=> ruby 1.6.7 (2002-03-29) [i586-linux]
"ruby-1.6\000-v\000-"

: 2002-03-22 ((<Module/module_eval>))

((<Module/module_eval>)) のブロック内で定数やクラス変数のスコープが
変わることはなくなりました。((<ruby-dev:...
...rubyist:1018>)), ((<ruby-dev:15684>)),
((<ruby-dev:15757>))

: ((<Module/include>))

モジュールが再帰的に include されないようになりました。

module
Foo; end
module
Bar; include Foo; end
module
Foo; include Bar; end

p Foo.ancestors

=> ruby 1.6.6 (2001...
...), ((<ruby-ext:01778>)), ((<ruby-dev:13659>))

: sync
: mutex_m

Fixed for obj.extend(Sync_m) and obj.extend(Mutex_m).((<ruby-dev:13463>))

$ ruby -v -rsocket -rmutex_m -e 's=TCPSocket.new("localhost",25); s.extend(Mutex_m)'
ruby 1.6.4 (2001-06-04) [i386-linux]
/usr/lib/ruby/1.6/mutex_...

クラス/メソッドの定義 (142.0)

クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined

...クラス/メソッドの定義
* クラス/メソッドの定義:
* class
* singleton_class
* module
* method
* operator
* nest_method
* eval_method
* singleton_method
* class_method
* limit
* 定義に関する操作:
* alias
* undef
* d...
...うな場合は外側は普通モジュールが利用される
# (Net のインスタンスがない。Net を include できるなどのため)
module
Net
class HTTP
end
class FTP
end
end

obj = Net::HTTP.new

# あるいは

include Net
obj = HTTP.new

# 以下のような使い方は組...
...ar'
end
end

# モジュールをクラスに extend すれば、モジュールのインスタンス
# メソッドがクラスメソッドになる
module
Foo
def foo
end
end
class Hoge
extend
Foo
end
//}

extend
については、Object#extend を参照して
ください。

===[a:limit]...

fiddle (78.0)

*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。

...モジュールは以下のようにユーザが定義した
モジュールを拡張する形で使います。

require "fiddle/import"
module
M
extend
Fiddle::Importer
end

以後、このモジュールで dlload や extern などのメソッドが使用できるようになります...
...ッパーメソッドを定義します。

require "fiddle/import"
module
M
extend
Fiddle::Importer
dlload "libc.so.6","libm.so.6"
extern "int strlen(char*)"
end
# Note that we should not include the module M from some reason.

p M.strlen('abc') #=> 3

M.strlen を使用す...
...きます。たとえば gettimeofday(2)
を使って現在時刻を得たい場合は以下のとおりです。

require 'fiddle/import'
module
M
extend
Fiddle::Importer
dlload "libc.so.6"
extern('int gettimeofday(void *, void *)')
Timeval = struct( ["long tv_sec",...
<< 1 2 3 ... > >>