Sha256: 974929e89ccbe3006027186b65ecf0df8c96154fcf3348b639f492a41e1e9acb
Contents?: true
Size: 401 Bytes
Versions: 4
Compression:
Stored size: 401 Bytes
Contents
module Noam class MessageFilter def initialize @hears = {} end def hear(event_name, &block) @hears[event_name] ||= [] @hears[event_name] << block end def receive(message) blocks = @hears[message.event] || [] blocks.each do |block| block.call(message) end message end def hears @hears.keys.uniq end end end
Version data entries
4 entries across 4 versions & 1 rubygems