Sha256: bf5f2750e4654757e07801b6f7cd799eda9f0cb5caa45e2a677dc74fe20af33c

Contents?: true

Size: 590 Bytes

Versions: 4

Compression:

Stored size: 590 Bytes

Contents

#
# Events namespace
#
# Creates unified collection of bindings to a particular instance
# that can be unbinded alltogether
#
# @example
#   namespace = Joosy.Events.Namespace(something)
#
#   namespace.bind 'event1', ->
#   namespace.bind 'event2', ->
#   namespace.unbind() # unbinds both bindings
#
class Joosy.Events.Namespace
  #
  # @param [Object] @parent         Any instance that can trigger events
  #
  constructor: (@parent) ->
    @bindings = []

  bind: (args...) -> @bindings.push @parent.bind(args...)
  unbind: ->
    @parent.unbind b for b in @bindings
    @bindings = []

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
joosy-1.2.0.alpha.54 source/joosy/events/namespace.coffee
joosy-1.2.0.alpha.53 source/joosy/events/namespace.coffee
joosy-1.2.0.alpha.52 source/joosy/events/namespace.coffee
joosy-1.2.0.alpha.51 source/joosy/events/namespace.coffee