 
     @on eventName, oneShotHandler
 
-  # Public: Triggers a registered event.
+  # Triggers a registered event.
   #
   # eventName - A {String} name identifying an event
   # args - Any additional arguments to pass over to the event `handler`

#
# Each event can have more than one handler; that is, an event can trigger multiple functions.
module.exports =
  # Public: Associates an event name with a function to perform.
  #
  # This is called endlessly, until the event is turned {.off}.
  #

      @eventHandlersByNamespace = {}
      @afterUnsubscribe?() if @subscriptionCount() < subscriptionCountBefore

  # When called, stops triggering any events.
  pauseEvents: ->
    @pauseCount ?= 0
    if @pauseCount++ == 0
      @queuedEvents ?= []

  # When called, resumes triggering events.
  resumeEvents: ->
    if --@pauseCount == 0
      queuedEvents = @queuedEvents
      @queuedEvents = null
      @trigger(event...) for event in queuedEvents

  # Identifies how many events are registered.
  #
  # Returns a {Number}.
  subscriptionCount: ->
