NaifyView\Extension\NaifyViewExtensionRegistry クラス

NaifyViewExtensionRegistry — 拡張機能の登録一覧と変更通知

フィルター、関数提供元、IRプロバイダーを登録順に保持する。 追加・解除のたびに通知先へ現在の一覧を渡す。登録時の複製や重複排除は行わない。

プロパティ

名前型説明
private $adopter mixed 登録一覧の変更通知先。nullなら通知しない
private $filterHandlers array 登録順のフィルター提供元
private $callableProviders array 登録順の関数提供元
private $templateIrProviders array 登録順のIRプロバイダー

メソッド

メソッド説明
public __construct(array $filterHandlers = '...', array $callableProviders = '...', array $templateIrProviders = '...', ?callable $adopter): void 初期の登録一覧と変更通知先を受け取る
配列の添字を詰め直し、IR契約を満たさない要素は除外する。初期化時には通知しない。
public applyExtension(NaifyViewExtensionInterface $extension): void 拡張の登録処理をこの一覧に対して実行する
public addFilterHandler(object|array $filterHandler): void フィルターを末尾へ登録し、変更を通知する
public addCallableProvider(object $callableProvider): void 関数提供元を末尾へ登録し、変更を通知する
public addTemplateIrProvider(TemplateIrProviderInterface $templateIrProvider): void IRプロバイダーを末尾へ登録し、変更を通知する
public clearFilterHandlers(): void フィルター登録をすべて解除し、変更を通知する
public clearCallableProviders(): void 関数提供元をすべて解除し、変更を通知する
public clearTemplateIrProviders(): void IRプロバイダーをすべて解除し、変更を通知する
public getFilterHandlers(): array 登録順のフィルター一覧を返す
public getCallableProviders(): array 登録順の関数提供元一覧を返す
public getTemplateIrProviders(): array 登録順のIRプロバイダー一覧を返す
private sync(): void 通知先がある場合だけ、現在の登録一覧を渡す