Class: Concurrent::Actor::Envelope
- Inherits:
-
Object
- Object
- Concurrent::Actor::Envelope
show all
- Includes:
- TypeCheck
- Defined in:
- lib/concurrent-ruby-edge/concurrent/actor/envelope.rb
Instance Attribute Summary collapse
Instance Method Summary
collapse
Methods included from TypeCheck
#Child!, #Child?, #Match!, #Match?, #Type!, #Type?
Constructor Details
#initialize(message, future, sender, address) ⇒ Envelope
Returns a new instance of Envelope.
19
20
21
22
23
24
|
# File 'lib/concurrent-ruby-edge/concurrent/actor/envelope.rb', line 19
def initialize(message, future, sender, address)
@message = message
@future = Type! future, Promises::ResolvableFuture, NilClass
@sender = Type! sender, Reference, Thread
@address = Type! address, Reference
end
|
Instance Attribute Details
#address ⇒ Object
17
|
# File 'lib/concurrent-ruby-edge/concurrent/actor/envelope.rb', line 17
attr_reader :message, :future, :sender, :address
|
#future ⇒ Edge::Future
17
|
# File 'lib/concurrent-ruby-edge/concurrent/actor/envelope.rb', line 17
attr_reader :message, :future, :sender, :address
|
#message ⇒ Object
17
18
19
|
# File 'lib/concurrent-ruby-edge/concurrent/actor/envelope.rb', line 17
def message
@message
end
|
17
|
# File 'lib/concurrent-ruby-edge/concurrent/actor/envelope.rb', line 17
attr_reader :message, :future, :sender, :address
|
Instance Method Details
#address_path ⇒ Object
34
35
36
|
# File 'lib/concurrent-ruby-edge/concurrent/actor/envelope.rb', line 34
def address_path
address.path
end
|
#reject!(error) ⇒ Object
38
39
40
|
# File 'lib/concurrent-ruby-edge/concurrent/actor/envelope.rb', line 38
def reject!(error)
future.reject error unless future.nil?
end
|
#sender_path ⇒ Object
26
27
28
29
30
31
32
|
# File 'lib/concurrent-ruby-edge/concurrent/actor/envelope.rb', line 26
def sender_path
if sender.is_a? Reference
sender.path
else
sender.to_s
end
end
|