@rotomeca/event - v5.0.0
    Preparing search index...

    Class AEventHandler<TArgs, T, TResult>Abstract

    Implémentation abstraite de IEventHandler.

    Fournit toute la logique commune aux gestionnaires d'événements : gestion de la liste des callbacks, génération des clés, déclenchement des événements d'observation (onHandlerAdded, onHandlerRemoved, onHandlerCleared).

    Les classes concrètes n'ont qu'à implémenter invoke et les trois méthodes d'initialisation des événements d'observation.

    Type Parameters

    • TArgs extends any[] = any[]

      Tuple représentant les types des arguments transmis aux callbacks lors de l'appel. Par défaut any[].

    • T extends Func<TArgs> = Func<TArgs>

      Type des callbacks attachés à l'événement, doit étendre Func<TArgs>. Par défaut Func<TArgs>.

    • TResult = EventCallResult<T>

    Hierarchy (View Summary)

    Implements

    Index

    Constructors

    Accessors

    • get keys(): string[]

      Retourne la liste des clés des callbacks actuellement enregistrés.

      Returns string[]

      const keys = event.keys; // ['handler1', 'handler2']
      

    Methods

    • Protected

      Retourne les données associées à la clé donnée, ou null si la clé n'existe pas.

      Point d'accès protégé au dictionnaire interne — permet aux classes concrètes d'accéder aux données d'un callback sans exposer #_callbacks directement.

      Parameters

      • key: string

        La clé du callback à récupérer.

      Returns MayBe<IEventData<TArgs, T>>

      Les données du callback, ou null si la clé est absente.

    • Ajoute un callback avec une clé spécifique.

      Parameters

      • key: string

        Clé identifiant le callback.

      • event: T

        Le callback à ajouter.

      • ...args: Partial<TArgs>

        Arguments par défaut transmis au callback à chaque appel.

      Returns this

      L'instance courante pour permettre le chaînage.

    • Supprime tous les callbacks enregistrés en une seule opération O(1).

      Capture la liste des callbacks avant l'effacement, puis déclenche onHandlerCleared après — garantissant que la Map est vide avant la notification, sans risque de double déclenchement si un observateur appelle add dans son callback.

      Returns this

      L'instance courante pour permettre le chaînage.

    • Vérifie si un callback est enregistré sous la clé donnée.

      Parameters

      • key: string

        La clé à vérifier.

      Returns boolean

      true si un callback existe pour cette clé, false sinon.

    • Ajoute un callback en générant automatiquement une clé unique.

      Parameters

      • event: T

        Le callback à ajouter.

      • ...args: Partial<TArgs>

        Arguments par défaut transmis au callback à chaque appel.

      Returns string

      La clé générée.