Ruby 1.9.2 リファレンスマニュアル > ライブラリ一覧 > observerライブラリ > Observableモジュール
クラスの継承リスト: Observable
Observer パターンを提供するモジュールです。
Mix-in により Observer パターンを提供します。
Observable モジュールを include したクラスは Observable#changed メソッドにより更新フラグを立て、 Observable#notify_observers が呼び出されると 更新フラグが立っている場合はオブザーバに通知します (オブザーバの update メソッドを呼び出す)。 Observable#notify_observers の引数は そのままオブザーバの update メソッドに渡されます。
require 'observer'
class AObservable
include Observable
...
end
class AObserver
def update(arg)
...
end
...
end
obj = AObservable.new
observer = AObserver.new
obj.add_observer(observer)
obj.changed
obj.notify_observers(args)
| 定義 | 説明 | |
|---|---|---|
add_observer(observer) -> Array
|
オブザーバを登録します。 |
|
changed(state = true) -> bool
|
更新フラグを立てます。 |
|
changed? -> bool
|
更新フラグの状態を返します。 |
|
count_observers -> Fixnum
|
登録されているオブザーバの数を返します。 |
|
delete_observer(observer) -> object | nil
|
オブザーバを削除します。 |
|
delete_observers -> Array
|
オブザーバをすべて削除します。 |
|
notify_observers(*arg) -> nil
|
オブザーバへ更新を通知します。 |
|