module MicroEvent

Constants

VERSION

Public Instance Methods

bind(event, &fn) click to toggle source
# File lib/microevent.rb, line 6
def bind(event, &fn)
  @_ ||= Hash.new{ |h,k| h[k] = [] }
  fn ? @_[event] << fn : raise(ArgumentError, "no block given")
end
trigger(event, *args) click to toggle source
# File lib/microevent.rb, line 15
def trigger(event, *args)
  !!@_ && !@_[event].dup.each{ |fn| instance_exec(*args, &fn) }.empty?
end
unbind(event, &fn) click to toggle source
# File lib/microevent.rb, line 11
def unbind(event, &fn)
  fn ? @_ && @_[event].delete(fn) : @_ && @_.delete(event) || []
end