Class: MrDarcy::Promise::ChildPromise
- Inherits:
-
Object
- Object
- MrDarcy::Promise::ChildPromise
- Defined in:
- lib/mr_darcy/promise/child_promise.rb
Instance Attribute Summary collapse
-
#promise ⇒ Object
Returns the value of attribute promise.
-
#reject_block ⇒ Object
Returns the value of attribute reject_block.
-
#resolve_block ⇒ Object
Returns the value of attribute resolve_block.
Instance Method Summary collapse
-
#initialize(opts = {}) ⇒ ChildPromise
constructor
A new instance of ChildPromise.
- #parent_rejected(value) ⇒ Object
- #parent_resolved(value) ⇒ Object
Constructor Details
#initialize(opts = {}) ⇒ ChildPromise
Returns a new instance of ChildPromise.
7 8 9 |
# File 'lib/mr_darcy/promise/child_promise.rb', line 7 def initialize opts={} self.promise = MrDarcy.promise(opts) {} end |
Instance Attribute Details
#promise ⇒ Object
Returns the value of attribute promise.
5 6 7 |
# File 'lib/mr_darcy/promise/child_promise.rb', line 5 def promise @promise end |
#reject_block ⇒ Object
Returns the value of attribute reject_block.
5 6 7 |
# File 'lib/mr_darcy/promise/child_promise.rb', line 5 def reject_block @reject_block end |
#resolve_block ⇒ Object
Returns the value of attribute resolve_block.
5 6 7 |
# File 'lib/mr_darcy/promise/child_promise.rb', line 5 def resolve_block @resolve_block end |
Instance Method Details
#parent_rejected(value) ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/mr_darcy/promise/child_promise.rb', line 23 def parent_rejected value begin return reject_with value unless handles_reject? new_value = result_for :reject, value return defer_resolution_via new_value if thenable? new_value resolve_with new_value rescue Exception => e handle_exception e end end |
#parent_resolved(value) ⇒ Object
11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/mr_darcy/promise/child_promise.rb', line 11 def parent_resolved value begin return resolve_with value unless handles_resolve? new_value = result_for :resolve, value return defer_resolution_via new_value if thenable? new_value resolve_with new_value rescue Exception => e handle_exception e end end |