Sha256: f3f5ffa34184319f1fca4e9630dc2ba459fae8e03d5401b361df9cb40e9c6d47
Contents?: true
Size: 654 Bytes
Versions: 22
Compression:
Stored size: 654 Bytes
Contents
module Concurrent module Actor module Utils module AsAdHoc def initialize(*args, &initializer) @on_message = Type! initializer.call(*args), Proc end def on_message(message) instance_exec message, &@on_message end end # Allows quick creation of actors with behaviour defined by blocks. # @example ping # AdHoc.spawn :forward, an_actor do |where| # # this block has to return proc defining #on_message behaviour # -> message { where.tell message } # end class AdHoc < Context include AsAdHoc end end end end
Version data entries
22 entries across 22 versions & 1 rubygems