Module: Actor

Included in:
Controls::Actor::Continues, Controls::Actor::Example, Controls::Actor::Singleton, Controls::Actor::Stops, Router, Supervisor
Defined in:
lib/actor/actor.rb,
lib/actor/build.rb,
lib/actor/start.rb,
lib/actor/future.rb,
lib/actor/router.rb,
lib/actor/stream.rb,
lib/actor/address.rb,
lib/actor/duration.rb,
lib/actor/messages.rb,
lib/actor/observers.rb,
lib/actor/supervisor.rb,
lib/actor/destructure.rb,
lib/actor/handle_macro.rb,
lib/actor/controls/uuid.rb,
lib/actor/controls/actor.rb,
lib/actor/controls/error.rb,
lib/actor/messaging/read.rb,
lib/actor/controls/thread.rb,
lib/actor/messaging/write.rb,
lib/actor/controls/address.rb,
lib/actor/controls/message.rb,
lib/actor/messaging/message.rb,
lib/actor/substitutes/kernel.rb,
lib/actor/substitutes/thread.rb,
lib/actor/substitutes/thread_group.rb,
lib/actor/messaging/read/substitute.rb,
lib/actor/controls/message/attribute.rb,
lib/actor/messaging/write/substitute.rb

Defined Under Namespace

Modules: Build, Controls, Destructure, Duration, HandleMacro, Messages, Messaging, Module, Observers, Substitutes Classes: Address, Future, Router, Start, Stream, Supervisor

Class Method Summary collapse

Class Method Details

.included(cls) ⇒ Object

It is possible to ‘include Actor’ in the top-level namespace in order to bring this library’s constants into focus (i.e. reference them without any leading ‘Actor’ reference to qualify them). The test suite does this; see tests/test_init.rb. In that case, we take care not to attach any Actor behavior onto Object. This is achieved by placing the implementation of Actor in Actor::Module



8
9
10
# File 'lib/actor/actor.rb', line 8

def self.included cls
  cls.include Module unless cls == Object
end