Sha256: 14c4c64e36f59559a3d4cb21234f68579ff32388c4e5807a76b1199b0b14379a
Contents?: true
Size: 557 Bytes
Versions: 1
Compression:
Stored size: 557 Bytes
Contents
require 'micro/observers/version' module Micro module Observers require 'micro/observers/manager' module ClassMethods def call_observers(with: :call) proc do |object| Array(with) .each { |action| object.observers.call(action: action) } end end def notify_observers(with: :call) call_observers(with: with) end end def self.included(base) base.extend(ClassMethods) end def observers @observers ||= Observers::Manager.for(self) end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
u-observers-0.2.0 | lib/micro/observers.rb |