Class: Actor::Stream

Inherits:
Object
  • Object
show all
Defined in:
lib/actor/stream.rb

Defined Under Namespace

Modules: Null

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeStream

Returns a new instance of Stream.



5
6
7
# File 'lib/actor/stream.rb', line 5

def initialize
  @queues = Set.new
end

Instance Attribute Details

#queuesObject (readonly)

Returns the value of attribute queues.



3
4
5
# File 'lib/actor/stream.rb', line 3

def queues
  @queues
end

Instance Method Details

#add_queue(queue) ⇒ Object



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

def add_queue queue
  queues << queue
end

#remove_queue(queue) ⇒ Object



13
14
15
# File 'lib/actor/stream.rb', line 13

def remove_queue queue
  queues.delete queue
end

#write(message) ⇒ Object



17
18
19
20
21
# File 'lib/actor/stream.rb', line 17

def write message
  queues.each do |queue|
    queue.enq message
  end
end