Functional suite · 26 cases

The complete event lifecycle.

Registration order, payload identity, wildcard priority, one-shot behavior, removal, reset, and fluent composition.

Complete Functional inventory

26
  1. on exposes the registered handler in list
  2. on preserves registration order in list
  3. duplicate registrations remain visible as separate entries
  4. emit runs a registered handler synchronously
  5. emit runs handlers in registration order
  6. emit forwards every payload argument by identity
  7. handlers run without an emitter-bound this value
  8. once runs a handler exactly once
  9. on with an explicit false once flag remains persistent
  10. on with an explicit true once flag matches once
  11. wildcard handlers receive the emitted type before payloads
  12. wildcard handlers run before typed handlers
  13. multiple wildcard handlers retain registration order
  14. once supports wildcard subscriptions
  15. wildcard handlers are exposed under the stable symbol
  16. off removes a matching handler
  17. off removes every duplicate registration of a handler
  18. off leaves nonmatching handlers registered
  19. off with a wildcard handler removes an event type
  20. off defaults the handler argument to wildcard removal
  21. off defaults the event type to wildcard subscriptions only
  22. off removes one wildcard handler without touching typed handlers
  23. reset removes typed and wildcard registrations
  24. emitting an unknown type does not run other typed handlers
  25. all public mutators support fluent chaining
  26. the same function can be once and persistent independently