Interface TriggerLike<T>

イベント通知機構。

interface TriggerLike<T> {
    length: number;
    add(func: HandlerFunction<T>, owner?: unknown): void;
    add(params: TriggerAddParameters<T>): void;
    addOnce(func: HandlerFunction<T>, owner?: unknown): void;
    addOnce(params: TriggerAddParameters<T>): void;
    contains(func: null | HandlerFunction<T>, owner?: unknown): boolean;
    contains(params: TriggerSearchConditions<T>): boolean;
    destroy(): void;
    destroyed(): boolean;
    fire(arg?: T): void;
    handle(owner: any, func?: HandlerFunction<T>, name?: string): void;
    remove(func: HandlerFunction<T>, owner?: unknown): void;
    remove(params: TriggerRemoveConditions<T>): void;
    removeAll(params?: TriggerRemoveConditions<T>): void;
}

Type Parameters

  • T

Hierarchy (view full)

Implemented by

Properties

length: number

登録されているハンドラの数。

Methods

  • このTriggerにハンドラを追加する。

    Parameters

    • func: HandlerFunction<T>

      ハンドラの関数

    • Optionalowner: unknown

      ハンドラのオーナー。 func を呼び出す時に this として用いられる値

    Returns void

  • このTriggerにハンドラを追加する。

    Parameters

    Returns void

  • このTriggerにハンドラを追加する。 本メソッドにより追加されたハンドラは実行後に破棄される。

    Parameters

    • func: HandlerFunction<T>

      ハンドラの関数

    • Optionalowner: unknown

      ハンドラのオーナー。 func を呼び出す時に this として用いられる値

    Returns void

  • このTriggerにハンドラを追加する。 本メソッドにより追加されたハンドラは実行後に破棄される。

    Parameters

    Returns void

  • 指定した条件に一致したハンドラが登録されているかを返す。 指定されなかった条件は、条件として無視される(登録時の値に関わらず一致するとみなされる)。

    Parameters

    • func: null | HandlerFunction<T>

      条件として用いるハンドラの関数

    • Optionalowner: unknown

      条件として用いるハンドラのオーナー

    Returns boolean

  • 指定した条件に一致したハンドラが登録されているかを返す。 指定されなかった条件は、条件として無視される(登録時の値に関わらず一致するとみなされる)。

    Parameters

    Returns boolean

  • このTriggerを破棄する。

    Returns void

  • このTriggerが破棄されているかを返す。

    Returns boolean

  • このTriggerを発火する。

    登録された全ハンドラの関数を、引数 arg を与えて呼び出す。 呼び出し後、次のいずれかの条件を満たす全ハンドラの登録は解除される。

    • ハンドラが addOnce() で登録されていた場合
    • ハンドラが add() で登録される際に once: true オプションが与えられていた場合
    • 関数がtruthyな値を返した場合

    Parameters

    • Optionalarg: T

      ハンドラに与えられる引数

    Returns void

  • このTriggerにハンドラを追加する。

    Parameters

    Returns void

    互換性のために残されている。代わりに add() を利用すべきである。

  • 関数が func であり、かつオーナーが owner であるハンドラを削除する。 同じ組み合わせで複数登録されている場合、一つだけ削除する。

    Parameters

    • func: HandlerFunction<T>

      削除条件として用いるハンドラの関数

    • Optionalowner: unknown

      削除条件として用いるハンドラのオーナー。省略した場合、 undefined

    Returns void

  • 指定した条件に完全一致するハンドラを削除する。 同じ組み合わせで複数登録されている場合、一つだけ削除する。

    Parameters

    Returns void

  • 指定した条件に部分一致するハンドラを削除する。

    本メソッドは引数に与えた条件に一致したハンドラを全て削除する。 引数の条件を一部省略した場合、その値の内容が登録時と異なっていても対象のハンドラは削除される。 引数に与えた条件と完全に一致したハンドラのみを削除したい場合は this.remove() を用いる。 引数を省略した場合は全てのハンドラを削除する。

    Parameters

    Returns void