Object :: Meta :: Plugin :: Host.

Object :: Meta :: Plugin :: Hostは、Object :: Meta :: Pluginのように機能するホストプラグインです。
今すぐダウンロード

Object :: Meta :: Plugin :: Host. ランキングとまとめ

広告

  • Rating:
  • ライセンス:
  • Perl Artistic License
  • 価格:
  • FREE
  • 出版社名:
  • Yuval Kogman
  • 出版社のWebサイト:
  • http://search.cpan.org/nobull/

Object :: Meta :: Plugin :: Host. タグ


Object :: Meta :: Plugin :: Host. 説明

Object :: Meta :: Plugin :: Hostは、Object :: Meta :: Pluginのように機能するホストプラグインです。 Object :: Meta :: Plugin :: Hostは、Object :: Meta :: Pluginのように機能するホストプラグインです。サブクラス化されている場合はプラグインとして機能するか、それをplubopsis#をplubopsisにすることができるプラグインを含めることができます。 。 My $ host = newオブジェクト:: Meta :: Plugin :: Host; eval {$ host-> method()}; #$ host-> plug($ plugin)を死ぬべきです。 #$プラグインはメソッド$ host-> plug($ another)を定義します。 #$他のものは、後の$ host-> method()で接続されているため、別のメソッドと別の#$は次のように指定されます。 $ host->もう1つ($引数); $ host-> unplug($ another); $ host-> method(); #now $ pluginのメソッドはUniSetObject :: Meta :: Plugin :: Hostは、Object :: Meta :: Plugin.Theホストは単なるマージハッシュだけではなく、プラグインホストの実装です。それはさまざまなプラグインが同様の機能を提供できるように設計されています - 矛盾する名前空間を持つメソッド。競合する名前空間は共存し、互いに優先します。考えられるシナリオは、画像プロセッサ用のさまざまなプラグインを持つことです。これはすべてメソッド "プロセス"を定義します。それらはすべてインストールされています。エフェクトを取り出す必要があるとして注文し、最後にそれらをパイプラインにラップするプラグインが設定されます。プラグインのメソッドが設定されます。それ自体に。それはそれがホストにアクセスすることを可能にします、それは明示的にホストを包み込み、並べ替えられた優先順位でそれをエミュレートすることを明示的にすることを可能にします - 現在のプラグインは最初にリストで最初に存在します。他の人とは幸せに、それが役割を果たすかもしれません。 $ self-self>が$ self-self>を使用したデータ構造にアクセスする必要がある唯一のルールは、$ selfがコンテキストオブジェクトです。デフォルト(ホスト定義)メソッドの場合、それはそれ自身の代わりに呼び出します。それはそれを成功させるか、または特定のメソッドのスタックでそれを先行させるプラグインのメソッドを呼び出すことを要求することができます。さらに、ホストオブジェクトへのアクセスを取得することによって、プラグインは上述のように、呼び出しのパイプラインを非常に容易に実装することができる。必要なのは$ self-host-> stack($ method)>を呼び出して、それを省略するのを繰り返します。インターフェイスは、有用であることを定義する必要がある最小限のものを試してみることを試みることを目的としていることを目的としています。制限のために、この最小値は課されます。実装は決して最適化されていません。私はそれが速いと疑いがありますが、私は本当に気にしません。それは大きなアプリケーションのための素晴らしいフレームワークを作成することになっており、モジュール式である必要がある。要件: ・Perl


Object :: Meta :: Plugin :: Host. 関連ソフトウェア