Class: Whenner::Promise
- Inherits:
-
Object
- Object
- Whenner::Promise
- Extended by:
- Forwardable
- Defined in:
- lib/whenner/promise.rb
Overview
A promise represents the public face of a Deferred object. You can use it to add more callbacks to the deferred or inspect its state -- but you cannot resolve it.
The methods and attributes of the promise are basically forwarded to the deferred.
Instance Attribute Summary collapse
-
#fulfilled? ⇒ Boolean
readonly
Whether the deferred was successfully resolved.
-
#pending? ⇒ Boolean
readonly
Whether the deferred has not been resolved yet.
-
#reason ⇒ Object
readonly
The reason for the deferred to be rejected.
-
#rejected? ⇒ Boolean
readonly
Whether the deferred was rejected.
-
#resolved? ⇒ Boolean
readonly
Whether the deferred was either fulfilled or rejected.
-
#value ⇒ Object
readonly
The value that the deferred was fulfilled with.
Instance Method Summary collapse
-
#always(&block) ⇒ Promise
Register a callback to fire when the deferred is resolved.
-
#done(&block) ⇒ Promise
Register a callback to fire when the deferred is fulfilled.
-
#fail(&block) ⇒ Promise
Register a callback to fire when the deferred is rejected.
-
#initialize(deferred) ⇒ Promise
constructor
A new instance of Promise.
- #to_promise ⇒ Object
Constructor Details
#initialize(deferred) ⇒ Promise
Returns a new instance of Promise.
36 37 38 |
# File 'lib/whenner/promise.rb', line 36 def initialize(deferred) @deferred = deferred end |
Instance Attribute Details
#fulfilled? ⇒ Boolean (readonly)
Returns whether the deferred was successfully resolved.
32 33 34 |
# File 'lib/whenner/promise.rb', line 32 def_delegators :@deferred, *i[ reason value pending? fulfilled? resolved? rejected? fail done always ] |
#pending? ⇒ Boolean (readonly)
Returns whether the deferred has not been resolved yet.
32 33 34 |
# File 'lib/whenner/promise.rb', line 32 def_delegators :@deferred, *i[ reason value pending? fulfilled? resolved? rejected? fail done always ] |
#reason ⇒ Object (readonly)
Returns the reason for the deferred to be rejected.
32 33 34 |
# File 'lib/whenner/promise.rb', line 32 def_delegators :@deferred, *i[ reason value pending? fulfilled? resolved? rejected? fail done always ] |
#rejected? ⇒ Boolean (readonly)
Returns whether the deferred was rejected.
32 33 34 |
# File 'lib/whenner/promise.rb', line 32 def_delegators :@deferred, *i[ reason value pending? fulfilled? resolved? rejected? fail done always ] |
#resolved? ⇒ Boolean (readonly)
Returns whether the deferred was either fulfilled or rejected.
32 33 34 |
# File 'lib/whenner/promise.rb', line 32 def_delegators :@deferred, *i[ reason value pending? fulfilled? resolved? rejected? fail done always ] |
#value ⇒ Object (readonly)
Returns the value that the deferred was fulfilled with.
32 33 34 |
# File 'lib/whenner/promise.rb', line 32 def_delegators :@deferred, *i[ reason value pending? fulfilled? resolved? rejected? fail done always ] |
Instance Method Details
#always(&block) ⇒ Promise
Register a callback to fire when the deferred is resolved.
32 33 34 |
# File 'lib/whenner/promise.rb', line 32 def_delegators :@deferred, *i[ reason value pending? fulfilled? resolved? rejected? fail done always ] |
#done(&block) ⇒ Promise
Register a callback to fire when the deferred is fulfilled.
32 33 34 |
# File 'lib/whenner/promise.rb', line 32 def_delegators :@deferred, *i[ reason value pending? fulfilled? resolved? rejected? fail done always ] |
#fail(&block) ⇒ Promise
Register a callback to fire when the deferred is rejected.
32 33 34 |
# File 'lib/whenner/promise.rb', line 32 def_delegators :@deferred, *i[ reason value pending? fulfilled? resolved? rejected? fail done always ] |
#to_promise ⇒ Object
40 41 42 |
# File 'lib/whenner/promise.rb', line 40 def to_promise self end |