Class: ReliableMsg::Selector::Deferred
- Inherits:
-
Object
- Object
- ReliableMsg::Selector::Deferred
- Defined in:
- lib/reliable-msg/selector.rb
Overview
:nodoc:
Instance Method Summary collapse
- #coerce(value) ⇒ Object
-
#initialize(target, operation, args) ⇒ Deferred
constructor
A new instance of Deferred.
- #method_missing(symbol, *args) ⇒ Object
Constructor Details
#initialize(target, operation, args) ⇒ Deferred
Returns a new instance of Deferred.
49 50 51 52 53 |
# File 'lib/reliable-msg/selector.rb', line 49 def initialize target, operation, args @target = target @operation = operation @args = args end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method
#method_missing(symbol, *args) ⇒ Object
59 60 61 62 63 64 65 66 67 |
# File 'lib/reliable-msg/selector.rb', line 59 def method_missing symbol, *args if symbol == :__evaluate__ eval_args = @args.collect { |arg| arg.instance_of?(Deferred) ? arg.__evaluate__(*args) : arg } @target.__evaluate__(*args).send @operation, *eval_args else Deferred.new self, symbol, args end end |