6件ヒット
[1-6件を表示]
(0.043秒)
ライブラリ
- forwardable (2)
- monitor (1)
- observer (1)
- resolv (1)
- singleton (1)
キーワード
- Forwardable (1)
- MonitorMixin (1)
- Observable (1)
- SingleForwardable (1)
- Singleton (1)
検索結果
-
Resolv
:: DNS :: Resource :: IN (54022.0) -
DNS のインターネットクラスリソースを表すモジュールです。
DNS のインターネットクラスリソースを表すモジュールです。
インターネットクラスリソースを利用する class に
mixinして利用します。 -
Singleton (18076.0)
-
Singleton パターンを提供するモジュールです。
Singleton パターンを提供するモジュールです。
Mix-in により singleton パターンを提供します。
Singleton モジュールを include することにより、クラスは
高々ひとつのインスタンスしか持たないことが保証されます。
Singleton を Mix-in したクラスの
クラスメソッド instance はその唯一のインスタンスを返します。
new は private メソッドに移され、外部から呼び出そうとするとエラーになります。
=== サンプルコード
require 'singleton'
class SomeSingletonCl... -
MonitorMixin (18022.0)
-
スレッドの同期機構としてのモニター機能を提供するモジュールです。
...スレッドの同期機構としてのモニター機能を提供するモジュールです。
クラスに Module#include したり、オブジェクトに
Object#extend したりすることでそのクラス/オブジェクトに
モニタ機能を追加します。
=== 例
//emlist[消費......//emlist[extend する例][ruby]{
require 'monitor'
buf = []
buf.extend(MonitorMixin)
//}
しかし、MonitorMixin をクラス定義の際に Module#include を使って
利用する場合は、initialize メソッドで super() か super を呼んで、初期化する必要があります。... -
SingleForwardable (18022.0)
-
オブジェクトに対し、メソッドの委譲機能を定義するモジュールです。
...ようにする事もできます。
require 'forwardable'
class Implementation
def self.service
puts "serviced!"
end
end
module Facade
extend SingleForwardable
def_delegator :Implementation, :service
end
Facade.service # => serviced!
もし Forwardable と Si... -
Observable (130.0)
-
Observer パターンを提供するモジュールです。
Observer パターンを提供するモジュールです。
Mix-in により Observer パターンを提供します。
Observable モジュールを include したクラスは
Observable#changed メソッドにより更新フラグを立て、
Observable#notify_observers が呼び出されると
更新フラグが立っている場合はオブザーバに通知します
(オブザーバの update メソッドを呼び出す)。
Observable#notify_observers の引数は
そのままオブザーバの update メソッドに渡されます。
=== サンプルコード
re... -
Forwardable (40.0)
-
クラスに対し、メソッドの委譲機能を定義するモジュールです。
...し、メソッドの委譲機能を定義するモジュールです。
=== 使い方
クラスに対して Object#extend して使います。Module#include でないところに注意して下さい。
例:
require 'forwardable'
class Foo
extend Forwardable
def_delegators("@o...