diff --git a/docs/Enums.html b/docs/Enums.html index 9cf1851..a53c13a 100644 --- a/docs/Enums.html +++ b/docs/Enums.html @@ -303,7 +303,7 @@
Invalidates the token whenever another token is invalidated.
+ +When the given other token is invalidated, the receiver will also be invalidated. This +allows you to build trees of tokens for fine-grained cancellation control while still +allowing for the ability to cancel a lot of promises from a single token.
+Note
+Chained invalidation is a permanent relationship with no way to un-chain it later.
+Invalidating token
multiple times will invalidate the receiver every time.
Remark
+By using chained invalidation it’s possible to construct a scenario wherein you +respond to cancellation of a promise associated with the parent token by immediately +constructing a new promise using a child token, prior to the child token being invalidated +due to the parent token’s invalidation. This is a rather esoteric case.
+ +Important
+Do not introduce any cycles into the invalidation chain, as this will produce +an infinite loop upon invalidation.
+ +Swift
+public func chainInvalidation(from token: PromiseInvalidationToken, includingCancelWithoutInvalidating: Bool = true)
+
+
+
+ token
+
+ |
+
+
+
+ Another token that, when invalidated, will cause the current token to be +invalidated as well. + |
+
+
+ includingCancelWithoutInvalidating
+
+ |
+
+
+
+ The default value of |
+
@@ -451,7 +536,7 @@ Declaration
diff --git a/docs/Structs/TokenPromise.html b/docs/Structs/TokenPromise.html
index 287c3e0..8029c0b 100644
--- a/docs/Structs/TokenPromise.html
+++ b/docs/Structs/TokenPromise.html
@@ -2027,7 +2027,7 @@ Declaration
diff --git a/docs/Typealiases.html b/docs/Typealiases.html
index 027135a..15bdff1 100644
--- a/docs/Typealiases.html
+++ b/docs/Typealiases.html
@@ -183,7 +183,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums.html
index 9cf1851..a53c13a 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums.html
@@ -303,7 +303,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/NoError.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/NoError.html
index 458b040..17b5989 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/NoError.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/NoError.html
@@ -274,7 +274,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseCallbackError.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseCallbackError.html
index 1f0035b..8021752 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseCallbackError.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseCallbackError.html
@@ -160,7 +160,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseContext.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseContext.html
index a2b20b1..126cad5 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseContext.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseContext.html
@@ -516,7 +516,7 @@ Parameters
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseResult.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseResult.html
index 028cdf3..105e902 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseResult.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseResult.html
@@ -658,7 +658,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseTimeoutError.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseTimeoutError.html
index d3d428a..bdef3c0 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseTimeoutError.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Enums/PromiseTimeoutError.html
@@ -375,7 +375,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Functions.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Functions.html
index 8ada33f..50fb7cc 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Functions.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Functions.html
@@ -935,7 +935,7 @@ Return Value
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs.html
index 7b780dc..e0436e9 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs.html
@@ -360,7 +360,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/DelayedPromise.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/DelayedPromise.html
index 8c48fe3..7ecda69 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/DelayedPromise.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/DelayedPromise.html
@@ -304,7 +304,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/Promise.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/Promise.html
index 819b3b9..c8d3208 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/Promise.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/Promise.html
@@ -3256,7 +3256,7 @@ Return Value
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/Promise/Resolver.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/Promise/Resolver.html
index a19eacb..3db7637 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/Promise/Resolver.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/Promise/Resolver.html
@@ -485,7 +485,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/PromiseCancellable.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/PromiseCancellable.html
index 9dbbbd0..8a60894 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/PromiseCancellable.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/PromiseCancellable.html
@@ -166,7 +166,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/PromiseInvalidationToken.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/PromiseInvalidationToken.html
index bad95f4..42dcd07 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/PromiseInvalidationToken.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/PromiseInvalidationToken.html
@@ -296,6 +296,91 @@ Declaration
Invalidates the token whenever another token is invalidated.
+ +When the given other token is invalidated, the receiver will also be invalidated. This +allows you to build trees of tokens for fine-grained cancellation control while still +allowing for the ability to cancel a lot of promises from a single token.
+Note
+Chained invalidation is a permanent relationship with no way to un-chain it later.
+Invalidating token
multiple times will invalidate the receiver every time.
Remark
+By using chained invalidation it’s possible to construct a scenario wherein you +respond to cancellation of a promise associated with the parent token by immediately +constructing a new promise using a child token, prior to the child token being invalidated +due to the parent token’s invalidation. This is a rather esoteric case.
+ +Important
+Do not introduce any cycles into the invalidation chain, as this will produce +an infinite loop upon invalidation.
+ +Swift
+public func chainInvalidation(from token: PromiseInvalidationToken, includingCancelWithoutInvalidating: Bool = true)
+
+
+
+ token
+
+ |
+
+
+
+ Another token that, when invalidated, will cause the current token to be +invalidated as well. + |
+
+
+ includingCancelWithoutInvalidating
+
+ |
+
+
+
+ The default value of |
+
@@ -451,7 +536,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/TokenPromise.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/TokenPromise.html
index 287c3e0..8029c0b 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/TokenPromise.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Structs/TokenPromise.html
@@ -2027,7 +2027,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Typealiases.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Typealiases.html
index 027135a..15bdff1 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Typealiases.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/Typealiases.html
@@ -183,7 +183,7 @@ Declaration
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/index.html b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/index.html
index fa2a3ec..fb862bb 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/index.html
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/index.html
@@ -115,7 +115,7 @@
Tomorrowland
-Manually
You can add Tomorrowland to your workspace manually like any other project and add the resulting Tomorrowland.framework
to your application’s frameworks.
Carthage
-github "lilyball/Tomorrowland" ~> 0.5.0
+github "lilyball/Tomorrowland" ~> 1.0
+
+The project file is configured to use Swift 5. The code can be compiled against Swift 4.2 instead, but I’m not aware of any way to instruct Carthage to override the
+swift version during compilation.
CocoaPods
-pod 'Tomorrowland', '~> 0.5.0'
+pod 'Tomorrowland', '~> 1.0'
+
+The podspec declares support for both Swift 4.2 and Swift 5.0, but selecting the Swift version requires using CoocaPods 1.7.0 or later. When using CocoaPods 1.6
+or earlier the Swift version will default to 5.0.
SwiftPM
Tomorrowland currently relies on a private Obj-C module for its atomics. This arrangement means it is not compatible with Swift Package Manager (as adding
@@ -328,6 +334,14 @@
Cancelling and Invalidation
}
}
+Invalidation token chaining
+
+PromiseInvalidationToken
s can be arranged in a tree such that invalidating one token will cascade this invalidation down to other tokens. This is
+accomplished by calling childToken.chainInvalidation(from: parentToken)
. Practically speaking this is no different than just manually invalidating each
+child token yourself after invalidating the parent token, but it’s provided as a convenience to make it easy to have fine-grained invalidation control while also having
+a simple way to bulk-invalidate tokens. For example, you might have separate tokens for different view controllers that all chain invalidation from a single token that
+gets invalidated when the user logs out, thus automatically invalidating all your user-dependent network requests at once while still allowing each view controller the
+ability to invalidate just its own requests independently.
TokenPromise
In order to avoid the repetition of passing a PromiseInvalidationToken
to multiple Promise
methods as well as cancelling the resulting promise, a type
@@ -430,6 +444,23 @@
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above, without any additional terms or conditions.
Version History
+v1.0.0
+
+
+- Fix a rather serious bug where
PromiseInvalidationToken
s would not deinit as long as any promise whose callback was tied to the token was still unresolved.
+This meant that the default invalidateOnDeinit
behavior would not trigger and the callback would still fire even though there were no more external references
+to the token, and this meant any promises configured to be cancelled when the promise invalidated would not cancel. Tokens used purely for
+requestCancelOnInvalidate(_:)
would still deallocate, and tokens would still deallocate after any associated promises had resolved.
+- Tweak the atomic memory ordering used in
PromiseInvalidationToken
s. After a careful re-reading I don’t believe I was issuing the correct fences previously,
+making it possible for tokens whose associated promise callbacks were executing concurrently with a call to requestCancelOnInvalidate(_:)
to read the
+wrong generation value, and for tokens that had requestCancelOnInvalidate(_:)
invoked concurrently on multiple threads to corrupt the generation.
+- Add
PromiseInvalidationToken.chainInvalidation(from:)
to invalidate a token whenever another token invalidates. This allows for building a tree of
+tokens in order to have both fine-grained and bulk invalidation at the same time. Tokens chained together this way stay chained forever (#43).
+- Update project file to Swift 5.0. The source already supported this. This change should only affect people using Carthage or anyone adding building this
+framework from source.
+- Update the podspec to list both Swift 4.2 and Swift 5.0. With CocoaPods 1.7.0 or later your
Podfile
can now declare which version of Swift it’s compatible with.
+For anyone using CocoaPods 1.6 or earlier it will default to Swift 5.0.
+
v0.6.0
@@ -551,7 +582,7 @@ v0.1
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/search.json b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/search.json
index 73120a3..3a0ff68 100644
--- a/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/search.json
+++ b/docs/docsets/Tomorrowland.docset/Contents/Resources/Documents/search.json
@@ -1 +1 @@
-{"Typealiases.html#/s:12Tomorrowland17StdDelayedPromisea":{"name":"StdDelayedPromise","abstract":"StdDelayedPromise
is an alias for a DelayedPromise
whose error type is Swift.Error
.
"},"Typealiases.html#/s:12Tomorrowland10StdPromisea":{"name":"StdPromise","abstract":"StdPromise
is an alias for a Promise
whose error type is Swift.Error
.
"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5innerAA0C0Vyxq_Gvp":{"name":"inner","abstract":"The wrapped Promise
.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5tokenAA0c12InvalidationB0Vvp":{"name":"token","abstract":"The PromiseInvalidationToken
to use when invoking methods on the wrapped Promise
.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7promise5tokenACyxq_GAA0C0Vyxq_G_AA0c12InvalidationB0Vtcfc":{"name":"init(promise:token:)","abstract":"Returns a new TokenPromise
that wraps the given promise.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV4then2on_ACyxq_GAA0C7ContextO_yxctF":{"name":"then(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3map2on_ACyqd__q_GAA0C7ContextO_qd__xctlF":{"name":"map(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7flatMap2on_ACyqd__q_GAA0C7ContextO_AA0C0Vyqd__q_GxctlF":{"name":"flatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5catch2on_ACyxq_GAA0C7ContextO_yq_ctF":{"name":"catch(on:_:)","abstract":"Registers a callback that is invoked when the promise is rejected.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7recover2on_ACyxAA7NoErrorOGAA0C7ContextO_xq_ctF":{"name":"recover(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV8mapError2on_ACyxqd__GAA0C7ContextO_qd__q_ctlF":{"name":"mapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV12flatMapError2on_ACyxqd__GAA0C7ContextO_AA0C0Vyxqd__Gq_ctlF":{"name":"flatMapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV11tryMapError2on_ACyxs0F0_pGAA0C7ContextO_qd__q_KctsAFRd__lF":{"name":"tryMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV15tryFlatMapError2on_ACyxs0G0_pGAA0C7ContextO_AA0C0Vyxqd__Gq_KctsAFRd__lF":{"name":"tryFlatMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryMapError(on:_:)":{"name":"tryMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMapError(on:_:)":{"name":"tryFlatMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV6always2on_ACyxq_GAA0C7ContextO_yAA0C6ResultOyxq_GctF":{"name":"always(on:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV9mapResult2on0F8CompleteACyqd__qd_0_GAA0C7ContextO_AA0cE0Oyqd__qd_0_GAKyxq_Gctr0_lF":{"name":"mapResult(on:onComplete:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV13flatMapResult2on_ACyqd__qd_0_GAA0C7ContextO_AA0C0Vyqd__qd_0_GAA0cF0Oyxq_Gctr0_lF":{"name":"flatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV12tryMapResult2on_ACyqd__s5Error_pGAA0C7ContextO_AA0cF0Oyqd__qd_0_GAKyxq_GKctsAFRd_0_r0_lF":{"name":"tryMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV16tryFlatMapResult2on_ACyqd__s5Error_pGAA0C7ContextO_AA0C0Vyqd__qd_0_GAA0cG0Oyxq_GKctsAFRd_0_r0_lF":{"name":"tryFlatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryMapResult(on:_:)":{"name":"tryMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMapResult(on:_:)":{"name":"tryFlatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3tap2on_ACyxq_GAA0C7ContextO_yAA0C6ResultOyxq_GctF":{"name":"tap(on:_:)","abstract":"
Registers a callback that will be invoked when the promise is resolved without affecting behavior.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3tapACyxq_GyF":{"name":"tap()","abstract":"Returns a new TokenPromise
that adopts the result of the receiver without affecting its","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV8onCancel0D0_ACyxq_GAA0C7ContextO_yyctF":{"name":"onCancel(on:_:)","abstract":"
Registers a callback that will be invoked when the promise is cancelled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV4forkyACyxq_GyAEKXEKF":{"name":"fork(_:)","abstract":"Passes the TokenPromise
to a block and then returns the TokenPromise
for further","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV14ignoringCancelACyxq_GyF":{"name":"ignoringCancel()","abstract":"
Returns a new TokenPromise
that adopts the value of the receiver but ignores cancel","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE7tryThen2on_ACyxsAD_pGAA0C7ContextO_yxKctF":{"name":"tryThen(on:_:)","abstract":"
Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE6tryMap2on_ACyqd__sAD_pGAA0C7ContextO_qd__xKctlF":{"name":"tryMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMap(on:_:)":{"name":"tryFlatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE10tryFlatMap2on_ACyqd__sAD_pGAA0C7ContextO_AA0C0Vyqd__qd_0_GxKctsADRd_0_r0_lF":{"name":"tryFlatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE10tryRecover2on_ACyxsAD_pGAA0C7ContextO_xsAD_pKctF":{"name":"tryRecover(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE010tryFlatMapD02on_ACyxsAD_pGAA0C7ContextO_AA0C0Vyxqd__GsAD_pKctsADRd__lF":{"name":"tryFlatMapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two TokenPromise
s compare as equal if they represent the same promise.
","parent_name":"TokenPromise"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV18invalidateOnDeinitACSb_tcfc":{"name":"init(invalidateOnDeinit:)","abstract":"Creates and returns a new PromiseInvalidationToken
.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV10invalidateyyF":{"name":"invalidate()","abstract":"Invalidates the token and cancels any associated promises.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25cancelWithoutInvalidatingyyF":{"name":"cancelWithoutInvalidating()","abstract":"Cancels any associated promises without invalidating the token.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25requestCancelOnInvalidateyyAA0B0Vyxq_Gr0_lF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Registers a Promise
to be requested to cancel automatically when the token is invalidated.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25requestCancelOnInvalidateyySo10TWLPromiseCyxq_GRlzCRl_Cr0_lF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Registers an ObjCPromise
to be requested to cancel automatically when the token is","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:s23CustomStringConvertibleP11descriptionSSvp":{"name":"description","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:s28CustomDebugStringConvertibleP16debugDescriptionSSvp":{"name":"debugDescription","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"
Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseInvalidationToken"},"Structs/PromiseCancellable.html#/s:12Tomorrowland18PromiseCancellableV13requestCancelyyF":{"name":"requestCancel()","abstract":"Requests cancellation of the promise this PromiseCancellable
was created from.
","parent_name":"PromiseCancellable"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7fulfill4withyx_tF":{"name":"fulfill(with:)","abstract":"Fulfills the promise with the given value.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV6reject4withyq__tF":{"name":"reject(with:)","abstract":"Rejects the promise with the given error.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV6cancelyyF":{"name":"cancel()","abstract":"Cancels the promise.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7resolve4withyAA0B6ResultOyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7resolve4withyACyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with another promise.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV15onRequestCancel0D0_yAA0B7ContextO_yAEyxq__GctF":{"name":"onRequestCancel(on:_:)","abstract":"Registers a block that will be invoked if requestCancel()
is invoked on the promise","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5Error_pRs_rlE7resolve4withyAA0B6ResultOyxqd__G_tsAFRd__lF":{"name":"resolve(with:)","abstract":"
Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5Error_pRs_rlE14handleCallback08isCancelD0yxSg_sAF_pSgtcSbsAF_pc_tF":{"name":"handleCallback(isCancelError:)","abstract":"Convenience method for handling framework callbacks.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5ErrorR_rlE7resolve4withys6ResultOyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html":{"name":"Resolver","abstract":"A Resolver
is used to fulfill, reject, or cancel its associated Promise
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6resultAA0B6ResultOyxq_GSgvp":{"name":"result","abstract":"Returns the result of the promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV16makeWithResolverACyxq_G_AC0E0Vyxq__GtyFZ":{"name":"makeWithResolver()","abstract":"Returns a Promise
and a Promise.Resolver
that can be used to fulfill that promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on_ACyxq_GAA0B7ContextO_yAC8ResolverVyxq__Gctcfc":{"name":"init(on:_:)","abstract":"Returns a new Promise
that will be resolved using the given block.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9fulfilledACyxq_Gx_tcfc":{"name":"init(fulfilled:)","abstract":"Returns a Promise
that is already fulfilled with the given value.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8rejectedACyxq_Gq__tcfc":{"name":"init(rejected:)","abstract":"Returns a Promise
that is already rejected with the given error.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4withACyxq_GAA0B6ResultOyxq_G_tcfc":{"name":"init(with:)","abstract":"Returns a Promise
that is already resolved with the given result.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4then2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyxctF":{"name":"then(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3map2on5token_ACyqd__q_GAA0B7ContextO_AA0B17InvalidationTokenVSgqd__xctlF":{"name":"map(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7flatMap2on5token_ACyqd__q_GAA0B7ContextO_AA0B17InvalidationTokenVSgAGxctlF":{"name":"flatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV5catch2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyq_ctF":{"name":"catch(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is rejected.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7recover2on5token_ACyxAA7NoErrorOGAA0B7ContextO_AA0B17InvalidationTokenVSgxq_ctF":{"name":"recover(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8mapError2on5token_ACyxqd__GAA0B7ContextO_AA0B17InvalidationTokenVSgqd__q_ctlF":{"name":"mapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV12flatMapError2on5token_ACyxqd__GAA0B7ContextO_AA0B17InvalidationTokenVSgAGq_ctlF":{"name":"flatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV11tryMapError2on5token_ACyxs0E0_pGAA0B7ContextO_AA0B17InvalidationTokenVSgqd__q_KctsAGRd__lF":{"name":"tryMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV15tryFlatMapError2on5token_ACyxs0F0_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyxqd__Gq_KctsAGRd__lF":{"name":"tryFlatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/tryMapError(on:token:_:)":{"name":"tryMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMapError(on:token:_:)":{"name":"tryFlatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6always2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyAA0B6ResultOyxq_GctF":{"name":"always(on:token:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9mapResult2on5token_ACyqd__qd_0_GAA0B7ContextO_AA0B17InvalidationTokenVSgAA0bD0Oyqd__qd_0_GANyxq_Gctr0_lF":{"name":"mapResult(on:token:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV13flatMapResult2on5token_ACyqd__qd_0_GAA0B7ContextO_AA0B17InvalidationTokenVSgAgA0bE0Oyxq_Gctr0_lF":{"name":"flatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV12tryMapResult2on5token_ACyqd__s5Error_pGAA0B7ContextO_AA0B17InvalidationTokenVSgAA0bE0Oyqd__qd_0_GAOyxq_GKctsAGRd_0_r0_lF":{"name":"tryMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV16tryFlatMapResult2on5token_ACyqd__s5Error_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyqd__qd_0_GAA0bF0Oyxq_GKctsAGRd_0_r0_lF":{"name":"tryFlatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/tryMapResult(on:token:_:)":{"name":"tryMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMapResult(on:token:_:)":{"name":"tryFlatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3tap2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyAA0B6ResultOyxq_GctF":{"name":"tap(on:token:_:)","abstract":"
Registers a callback that will be invoked when the promise is resolved without affecting behavior.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3tapACyxq_GyF":{"name":"tap()","abstract":"Returns a new Promise
that adopts the result of the receiver without affecting its behavior.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8onCancel0C05token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyyctF":{"name":"onCancel(on:token:_:)","abstract":"Registers a callback that will be invoked when the promise is cancelled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4forkyACyxq_GyAEKXEKF":{"name":"fork(_:)","abstract":"Passes the Promise
to a block and then returns the Promise
for further chaining.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV13requestCancelyyF":{"name":"requestCancel()","abstract":"Requests that the Promise
should be cancelled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV25requestCancelOnInvalidateyACyxq_GAA0B17InvalidationTokenVF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Requests that the Promise
should be cancelled when the token is invalidated.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV14ignoringCancelACyxq_GyF":{"name":"ignoringCancel()","abstract":"Returns a new Promise
that adopts the value of the receiver but ignores cancel requests.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6resultACyxq_GAA0B6ResultOyxq_G_tcfc":{"name":"init(result:)","abstract":"Undocumented
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on6result5afterACyxq_GAA0B7ContextO_AA0B6ResultOyxq_GSdtcfc":{"name":"init(on:result:after:)","abstract":"Undocumented
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV21requestCancelOnDeinityACyxq_GyXlF":{"name":"requestCancelOnDeinit(_:)","abstract":"Requests that the Promise
should be cancelled when the object deinits.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5ErrorR_rlE6upcastACyxsAD_pGvp":{"name":"upcast","abstract":"Returns a new promise with an error type of Swift.Error
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVA2A7NoErrorORs_rlE6upcastACyxs0D0_pGvp":{"name":"upcast","abstract":"Returns a new promise with an error type of Swift.Error
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE2on_ACyxsAD_pGAA0B7ContextO_yAC8ResolverVyxsAD_p_GKctcfc":{"name":"init(on:_:)","abstract":"Returns a new Promise
that will be resolved using the given block.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE7tryThen2on5token_ACyxsAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgyxKctF":{"name":"tryThen(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE6tryMap2on5token_ACyqd__sAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgqd__xKctlF":{"name":"tryMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMap(on:token:_:)":{"name":"tryFlatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE10tryFlatMap2on5token_ACyqd__sAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyqd__qd_0_GxKctsADRd_0_r0_lF":{"name":"tryFlatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE10tryRecover2on5token_ACyxsAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgxsAD_pKctF":{"name":"tryRecover(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two Promise
s compare as equal if they represent the same promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV11cancellableAA0B11CancellableVvp":{"name":"cancellable","abstract":"Returns a value that can be used to cancel this promise without holding onto the full promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5ErrorR_rlE4withACyxq_Gs6ResultOyxq_G_tcfc":{"name":"init(with:)","abstract":"Returns a Promise
that is already resolved with the given result.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9withTokenyAA0dB0Vyxq_GAA0b12InvalidationD0VF":{"name":"withToken(_:)","abstract":"Returns a new TokenPromise
that wraps the receiver.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on9fulfilled5afterACyxq_GAA0B7ContextO_xSdtcfc":{"name":"init(on:fulfilled:after:)","abstract":"Returns a Promise
that fulfills with the given value after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on8rejected5afterACyxq_GAA0B7ContextO_q_Sdtcfc":{"name":"init(on:rejected:after:)","abstract":"Returns a Promise
that rejects with the given error after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on4with5afterACyxq_GAA0B7ContextO_AA0B6ResultOyxq_GSdtcfc":{"name":"init(on:with:after:)","abstract":"Returns a Promise
that resolves with the given result after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV5delay2on_ACyxq_GAA0B7ContextO_SdtF":{"name":"delay(on:_:)","abstract":"Returns a new Promise
that adopts the receiver’s result after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7timeout2on5delayACyxAA0B12TimeoutErrorOyq_GGAA0B7ContextO_SdtF":{"name":"timeout(on:delay:)","abstract":"Returns a Promise
that is rejected with an error if the receiver does not resolve within","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE7timeout2on5delayACyxsAD_pGAA0B7ContextO_SdtF":{"name":"timeout(on:delay:)","abstract":"
Returns a Promise
that is rejected with an error if the receiver does not resolve within","parent_name":"Promise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV8Resolvera":{"name":"Resolver","abstract":"
The type of the promise resolver. See Promise<Value,Error>.Resolver
.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV2on_ACyxq_GAA0C7ContextO_yAA0C0V8ResolverVyxq__Gctcfc":{"name":"init(on:_:)","abstract":"Returns a new DelayedPromise
that can be resolved with the given block.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV7promiseAA0C0Vyxq_Gvp":{"name":"promise","abstract":"Returns a Promise
that asynchronously contains the value of the computation.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two DelayedPromise
s compare as equal if they would produce equal Promise
s.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html":{"name":"DelayedPromise","abstract":"DelayedPromise
is like a Promise
but it doesn’t invoke its callback until the .promise
"},"Structs/Promise.html":{"name":"Promise","abstract":"
A Promise
is a construct that will eventually hold a value or error, and can invoke callbacks"},"Structs/PromiseCancellable.html":{"name":"PromiseCancellable","abstract":"
A type that can be used to cancel a promise without holding onto the full promise.
"},"Structs/PromiseInvalidationToken.html":{"name":"PromiseInvalidationToken","abstract":"An invalidation token that can be used to cancel callbacks registered to a Promise
.
"},"Structs/TokenPromise.html":{"name":"TokenPromise","abstract":"A Promise
adapter that automatically applies a PromiseInvalidationToken
.
"},"Functions.html#/s:12Tomorrowland4when9fulfilled3qos15cancelOnFailureAA7PromiseVySayxGq_GSayAGyxq_GG_8Dispatch0I3QoSV0J6SClassOSbtr0_lF":{"name":"when(fulfilled:qos:cancelOnFailure:)","abstract":"Waits on an array of Promise
s and returns a Promise
that is fulfilled with an array of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled_____3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_q2_q3_tq4_GAGyxq4_G_AGyq_q4_GAGyq0_q4_GAGyq1_q4_GAGyq2_q4_GAGyq3_q4_G8Dispatch0I3QoSV0J6SClassOSbtr5_lF":{"name":"when(fulfilled:_:_:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled____3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_q2_tq3_GAGyxq3_G_AGyq_q3_GAGyq0_q3_GAGyq1_q3_GAGyq2_q3_G8Dispatch0I3QoSV0J6SClassOSbtr4_lF":{"name":"when(fulfilled:_:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled___3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_tq2_GAGyxq2_G_AGyq_q2_GAGyq0_q2_GAGyq1_q2_G8Dispatch0I3QoSV0J6SClassOSbtr3_lF":{"name":"when(fulfilled:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled__3qos15cancelOnFailureAA7PromiseVyx_q_q0_tq1_GAGyxq1_G_AGyq_q1_GAGyq0_q1_G8Dispatch0I3QoSV0J6SClassOSbtr2_lF":{"name":"when(fulfilled:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled_3qos15cancelOnFailureAA7PromiseVyx_q_tq0_GAGyxq0_G_AGyq_q0_G8Dispatch0I3QoSV0J6SClassOSbtr1_lF":{"name":"when(fulfilled:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when5first15cancelRemainingAA7PromiseVyxq_GSayAGG_Sbtr0_lF":{"name":"when(first:cancelRemaining:)","abstract":"
Returns a Promise
that is resolved with the result of the first resolved input Promise
.
"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorO8timedOutyACyxGAEmlF":{"name":"timedOut","abstract":"The promise did not resolve within the given interval.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorO8rejectedyACyxGxcAEmlF":{"name":"rejected(_:)","abstract":"The promise was rejected with an error.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorOAASQRzlE2eeoiySbACyxG_AEtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorOAASQRzlE2neoiySbACyxG_AEtFZ":{"name":"!=(_:_:)","abstract":"Returns a Boolean value indicating whether two values are not equal.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseTimeoutError"},"Enums/NoError.html#/s:12Tomorrowland7NoErrorO2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"NoError"},"Enums/NoError.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"NoError"},"Enums/NoError.html#/s:Se4fromxs7Decoder_p_tKcfc":{"name":"init(from:)","parent_name":"NoError"},"Enums/NoError.html#/s:SE6encode2toys7Encoder_p_tKF":{"name":"encode(to:)","parent_name":"NoError"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5valueyACyxq_GxcAEmr0_lF":{"name":"value(_:)","abstract":"The value the promise was fulfilled with.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5erroryACyxq_Gq_cAEmr0_lF":{"name":"error(_:)","abstract":"The error the promise was rejected with.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO9cancelledyACyxq_GAEmr0_lF":{"name":"cancelled","abstract":"The promise was cancelled.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5valuexSgvp":{"name":"value","abstract":"Returns the contained value if the result is .value
, otherwise nil
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5errorq_Sgvp":{"name":"error","abstract":"Returns the contained error if the result is .error
, otherwise nil
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO11isCancelledSbvp":{"name":"isCancelled","abstract":"Returns true
if the result is .cancelled
, otherwise false
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO3mapyACyqd__q_Gqd__xKXEKlF":{"name":"map(_:)","abstract":"Maps a successful result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO8mapErroryACyxqd__Gqd__q_KXEKlF":{"name":"mapError(_:)","abstract":"Maps a rejected result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO7flatMapyACyqd__q_GAExKXEKlF":{"name":"flatMap(_:)","abstract":"Maps a successful result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO12flatMapErroryACyxqd__GAEq_KXEKlF":{"name":"flatMapError(_:)","abstract":"Maps a rejected result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAASQRzSQR_rlE2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAASQRzSQR_rlE2neoiySbACyxq_G_AEtFZ":{"name":"!=(_:_:)","abstract":"Returns a Boolean value indicating whether two values are not equal.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:SE6encode2toys7Encoder_p_tKF":{"name":"encode(to:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:Se4fromxs7Decoder_p_tKcfc":{"name":"init(from:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAAs5ErrorR_rlEyACyxq_Gs0C0Oyxq_Gcfc":{"name":"init(_:)","abstract":"Returns a PromiseResult
from a Result
.
","parent_name":"PromiseResult"},"Enums/PromiseCallbackError.html#/c:@M@Tomorrowland@E@TWLPromiseCallbackError@TWLPromiseCallbackErrorAPIMismatch":{"name":"apiMismatch","abstract":"The callback did not conform to the expected API.
","parent_name":"PromiseCallbackError"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO4mainyA2CmF":{"name":"main","abstract":"Execute on the main queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO10backgroundyA2CmF":{"name":"background","abstract":"Execute on a dispatch queue with the .background
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO7utilityyA2CmF":{"name":"utility","abstract":"Execute on a dispatch queue with the .utility
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO7defaultyA2CmF":{"name":"default","abstract":"Execute on a dispatch queue with the .default
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO13userInitiatedyA2CmF":{"name":"userInitiated","abstract":"Execute on a dispatch queue with the .userInitiated
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO15userInteractiveyA2CmF":{"name":"userInteractive","abstract":"Execute on a dispatch queue with the .userInteractive
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO5queueyACSo012OS_dispatch_D0CcACmF":{"name":"queue(_:)","abstract":"Execute on the specified dispatch queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO14operationQueueyACSo011NSOperationE0CcACmF":{"name":"operationQueue(_:)","abstract":"Execute on the specified operation queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO9immediateyA2CmF":{"name":"immediate","abstract":"Execute synchronously.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO4autoACvpZ":{"name":"auto","abstract":"Returns .main
when accessed from the main thread, otherwise .default
.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO3qosAC8Dispatch0E3QoSV0F6SClassO_tcfc":{"name":"init(qos:)","abstract":"Returns the PromiseContext
that corresponds to a given Dispatch QoS class.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html":{"name":"PromiseContext","abstract":"The context in which a Promise body or callback is evaluated.
"},"Enums/PromiseCallbackError.html":{"name":"PromiseCallbackError","abstract":"An error potentially returned from Promise.Resolver.handleCallback(isCancelError:)
.
"},"Enums/PromiseResult.html":{"name":"PromiseResult","abstract":"The result of a resolved promise.
"},"Enums/NoError.html":{"name":"NoError","abstract":"NoError
is a type that cannot be constructed.
"},"Enums/PromiseTimeoutError.html":{"name":"PromiseTimeoutError","abstract":"The error type returned from Promise.timeout
.
"},"Enums.html":{"name":"Enumerations","abstract":"The following enumerations are available globally.
"},"Functions.html":{"name":"Functions","abstract":"The following functions are available globally.
"},"Structs.html":{"name":"Structures","abstract":"The following structures are available globally.
"},"Typealiases.html":{"name":"Type Aliases","abstract":"The following type aliases are available globally.
"}}
\ No newline at end of file
+{"Typealiases.html#/s:12Tomorrowland17StdDelayedPromisea":{"name":"StdDelayedPromise","abstract":"StdDelayedPromise
is an alias for a DelayedPromise
whose error type is Swift.Error
.
"},"Typealiases.html#/s:12Tomorrowland10StdPromisea":{"name":"StdPromise","abstract":"StdPromise
is an alias for a Promise
whose error type is Swift.Error
.
"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5innerAA0C0Vyxq_Gvp":{"name":"inner","abstract":"The wrapped Promise
.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5tokenAA0c12InvalidationB0Vvp":{"name":"token","abstract":"The PromiseInvalidationToken
to use when invoking methods on the wrapped Promise
.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7promise5tokenACyxq_GAA0C0Vyxq_G_AA0c12InvalidationB0Vtcfc":{"name":"init(promise:token:)","abstract":"Returns a new TokenPromise
that wraps the given promise.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV4then2on_ACyxq_GAA0C7ContextO_yxctF":{"name":"then(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3map2on_ACyqd__q_GAA0C7ContextO_qd__xctlF":{"name":"map(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7flatMap2on_ACyqd__q_GAA0C7ContextO_AA0C0Vyqd__q_GxctlF":{"name":"flatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5catch2on_ACyxq_GAA0C7ContextO_yq_ctF":{"name":"catch(on:_:)","abstract":"Registers a callback that is invoked when the promise is rejected.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7recover2on_ACyxAA7NoErrorOGAA0C7ContextO_xq_ctF":{"name":"recover(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV8mapError2on_ACyxqd__GAA0C7ContextO_qd__q_ctlF":{"name":"mapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV12flatMapError2on_ACyxqd__GAA0C7ContextO_AA0C0Vyxqd__Gq_ctlF":{"name":"flatMapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV11tryMapError2on_ACyxs0F0_pGAA0C7ContextO_qd__q_KctsAFRd__lF":{"name":"tryMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV15tryFlatMapError2on_ACyxs0G0_pGAA0C7ContextO_AA0C0Vyxqd__Gq_KctsAFRd__lF":{"name":"tryFlatMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryMapError(on:_:)":{"name":"tryMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMapError(on:_:)":{"name":"tryFlatMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV6always2on_ACyxq_GAA0C7ContextO_yAA0C6ResultOyxq_GctF":{"name":"always(on:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV9mapResult2on0F8CompleteACyqd__qd_0_GAA0C7ContextO_AA0cE0Oyqd__qd_0_GAKyxq_Gctr0_lF":{"name":"mapResult(on:onComplete:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV13flatMapResult2on_ACyqd__qd_0_GAA0C7ContextO_AA0C0Vyqd__qd_0_GAA0cF0Oyxq_Gctr0_lF":{"name":"flatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV12tryMapResult2on_ACyqd__s5Error_pGAA0C7ContextO_AA0cF0Oyqd__qd_0_GAKyxq_GKctsAFRd_0_r0_lF":{"name":"tryMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV16tryFlatMapResult2on_ACyqd__s5Error_pGAA0C7ContextO_AA0C0Vyqd__qd_0_GAA0cG0Oyxq_GKctsAFRd_0_r0_lF":{"name":"tryFlatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryMapResult(on:_:)":{"name":"tryMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMapResult(on:_:)":{"name":"tryFlatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3tap2on_ACyxq_GAA0C7ContextO_yAA0C6ResultOyxq_GctF":{"name":"tap(on:_:)","abstract":"
Registers a callback that will be invoked when the promise is resolved without affecting behavior.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3tapACyxq_GyF":{"name":"tap()","abstract":"Returns a new TokenPromise
that adopts the result of the receiver without affecting its","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV8onCancel0D0_ACyxq_GAA0C7ContextO_yyctF":{"name":"onCancel(on:_:)","abstract":"
Registers a callback that will be invoked when the promise is cancelled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV4forkyACyxq_GyAEKXEKF":{"name":"fork(_:)","abstract":"Passes the TokenPromise
to a block and then returns the TokenPromise
for further","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV14ignoringCancelACyxq_GyF":{"name":"ignoringCancel()","abstract":"
Returns a new TokenPromise
that adopts the value of the receiver but ignores cancel","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE7tryThen2on_ACyxsAD_pGAA0C7ContextO_yxKctF":{"name":"tryThen(on:_:)","abstract":"
Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE6tryMap2on_ACyqd__sAD_pGAA0C7ContextO_qd__xKctlF":{"name":"tryMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMap(on:_:)":{"name":"tryFlatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE10tryFlatMap2on_ACyqd__sAD_pGAA0C7ContextO_AA0C0Vyqd__qd_0_GxKctsADRd_0_r0_lF":{"name":"tryFlatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE10tryRecover2on_ACyxsAD_pGAA0C7ContextO_xsAD_pKctF":{"name":"tryRecover(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE010tryFlatMapD02on_ACyxsAD_pGAA0C7ContextO_AA0C0Vyxqd__GsAD_pKctsADRd__lF":{"name":"tryFlatMapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two TokenPromise
s compare as equal if they represent the same promise.
","parent_name":"TokenPromise"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV18invalidateOnDeinitACSb_tcfc":{"name":"init(invalidateOnDeinit:)","abstract":"Creates and returns a new PromiseInvalidationToken
.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV10invalidateyyF":{"name":"invalidate()","abstract":"Invalidates the token and cancels any associated promises.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25cancelWithoutInvalidatingyyF":{"name":"cancelWithoutInvalidating()","abstract":"Cancels any associated promises without invalidating the token.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25requestCancelOnInvalidateyyAA0B0Vyxq_Gr0_lF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Registers a Promise
to be requested to cancel automatically when the token is invalidated.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25requestCancelOnInvalidateyySo10TWLPromiseCyxq_GRlzCRl_Cr0_lF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Registers an ObjCPromise
to be requested to cancel automatically when the token is","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV05chainC04from34includingCancelWithoutInvalidatingyAC_SbtF":{"name":"chainInvalidation(from:includingCancelWithoutInvalidating:)","abstract":"
Invalidates the token whenever another token is invalidated.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:s23CustomStringConvertibleP11descriptionSSvp":{"name":"description","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:s28CustomDebugStringConvertibleP16debugDescriptionSSvp":{"name":"debugDescription","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseInvalidationToken"},"Structs/PromiseCancellable.html#/s:12Tomorrowland18PromiseCancellableV13requestCancelyyF":{"name":"requestCancel()","abstract":"Requests cancellation of the promise this PromiseCancellable
was created from.
","parent_name":"PromiseCancellable"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7fulfill4withyx_tF":{"name":"fulfill(with:)","abstract":"Fulfills the promise with the given value.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV6reject4withyq__tF":{"name":"reject(with:)","abstract":"Rejects the promise with the given error.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV6cancelyyF":{"name":"cancel()","abstract":"Cancels the promise.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7resolve4withyAA0B6ResultOyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7resolve4withyACyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with another promise.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV15onRequestCancel0D0_yAA0B7ContextO_yAEyxq__GctF":{"name":"onRequestCancel(on:_:)","abstract":"Registers a block that will be invoked if requestCancel()
is invoked on the promise","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5Error_pRs_rlE7resolve4withyAA0B6ResultOyxqd__G_tsAFRd__lF":{"name":"resolve(with:)","abstract":"
Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5Error_pRs_rlE14handleCallback08isCancelD0yxSg_sAF_pSgtcSbsAF_pc_tF":{"name":"handleCallback(isCancelError:)","abstract":"Convenience method for handling framework callbacks.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5ErrorR_rlE7resolve4withys6ResultOyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html":{"name":"Resolver","abstract":"A Resolver
is used to fulfill, reject, or cancel its associated Promise
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6resultAA0B6ResultOyxq_GSgvp":{"name":"result","abstract":"Returns the result of the promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV16makeWithResolverACyxq_G_AC0E0Vyxq__GtyFZ":{"name":"makeWithResolver()","abstract":"Returns a Promise
and a Promise.Resolver
that can be used to fulfill that promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on_ACyxq_GAA0B7ContextO_yAC8ResolverVyxq__Gctcfc":{"name":"init(on:_:)","abstract":"Returns a new Promise
that will be resolved using the given block.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9fulfilledACyxq_Gx_tcfc":{"name":"init(fulfilled:)","abstract":"Returns a Promise
that is already fulfilled with the given value.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8rejectedACyxq_Gq__tcfc":{"name":"init(rejected:)","abstract":"Returns a Promise
that is already rejected with the given error.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4withACyxq_GAA0B6ResultOyxq_G_tcfc":{"name":"init(with:)","abstract":"Returns a Promise
that is already resolved with the given result.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4then2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyxctF":{"name":"then(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3map2on5token_ACyqd__q_GAA0B7ContextO_AA0B17InvalidationTokenVSgqd__xctlF":{"name":"map(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7flatMap2on5token_ACyqd__q_GAA0B7ContextO_AA0B17InvalidationTokenVSgAGxctlF":{"name":"flatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV5catch2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyq_ctF":{"name":"catch(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is rejected.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7recover2on5token_ACyxAA7NoErrorOGAA0B7ContextO_AA0B17InvalidationTokenVSgxq_ctF":{"name":"recover(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8mapError2on5token_ACyxqd__GAA0B7ContextO_AA0B17InvalidationTokenVSgqd__q_ctlF":{"name":"mapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV12flatMapError2on5token_ACyxqd__GAA0B7ContextO_AA0B17InvalidationTokenVSgAGq_ctlF":{"name":"flatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV11tryMapError2on5token_ACyxs0E0_pGAA0B7ContextO_AA0B17InvalidationTokenVSgqd__q_KctsAGRd__lF":{"name":"tryMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV15tryFlatMapError2on5token_ACyxs0F0_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyxqd__Gq_KctsAGRd__lF":{"name":"tryFlatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/tryMapError(on:token:_:)":{"name":"tryMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMapError(on:token:_:)":{"name":"tryFlatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6always2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyAA0B6ResultOyxq_GctF":{"name":"always(on:token:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9mapResult2on5token_ACyqd__qd_0_GAA0B7ContextO_AA0B17InvalidationTokenVSgAA0bD0Oyqd__qd_0_GANyxq_Gctr0_lF":{"name":"mapResult(on:token:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV13flatMapResult2on5token_ACyqd__qd_0_GAA0B7ContextO_AA0B17InvalidationTokenVSgAgA0bE0Oyxq_Gctr0_lF":{"name":"flatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV12tryMapResult2on5token_ACyqd__s5Error_pGAA0B7ContextO_AA0B17InvalidationTokenVSgAA0bE0Oyqd__qd_0_GAOyxq_GKctsAGRd_0_r0_lF":{"name":"tryMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV16tryFlatMapResult2on5token_ACyqd__s5Error_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyqd__qd_0_GAA0bF0Oyxq_GKctsAGRd_0_r0_lF":{"name":"tryFlatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/tryMapResult(on:token:_:)":{"name":"tryMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMapResult(on:token:_:)":{"name":"tryFlatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3tap2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyAA0B6ResultOyxq_GctF":{"name":"tap(on:token:_:)","abstract":"
Registers a callback that will be invoked when the promise is resolved without affecting behavior.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3tapACyxq_GyF":{"name":"tap()","abstract":"Returns a new Promise
that adopts the result of the receiver without affecting its behavior.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8onCancel0C05token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyyctF":{"name":"onCancel(on:token:_:)","abstract":"Registers a callback that will be invoked when the promise is cancelled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4forkyACyxq_GyAEKXEKF":{"name":"fork(_:)","abstract":"Passes the Promise
to a block and then returns the Promise
for further chaining.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV13requestCancelyyF":{"name":"requestCancel()","abstract":"Requests that the Promise
should be cancelled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV25requestCancelOnInvalidateyACyxq_GAA0B17InvalidationTokenVF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Requests that the Promise
should be cancelled when the token is invalidated.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV14ignoringCancelACyxq_GyF":{"name":"ignoringCancel()","abstract":"Returns a new Promise
that adopts the value of the receiver but ignores cancel requests.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6resultACyxq_GAA0B6ResultOyxq_G_tcfc":{"name":"init(result:)","abstract":"Undocumented
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on6result5afterACyxq_GAA0B7ContextO_AA0B6ResultOyxq_GSdtcfc":{"name":"init(on:result:after:)","abstract":"Undocumented
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV21requestCancelOnDeinityACyxq_GyXlF":{"name":"requestCancelOnDeinit(_:)","abstract":"Requests that the Promise
should be cancelled when the object deinits.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5ErrorR_rlE6upcastACyxsAD_pGvp":{"name":"upcast","abstract":"Returns a new promise with an error type of Swift.Error
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVA2A7NoErrorORs_rlE6upcastACyxs0D0_pGvp":{"name":"upcast","abstract":"Returns a new promise with an error type of Swift.Error
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE2on_ACyxsAD_pGAA0B7ContextO_yAC8ResolverVyxsAD_p_GKctcfc":{"name":"init(on:_:)","abstract":"Returns a new Promise
that will be resolved using the given block.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE7tryThen2on5token_ACyxsAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgyxKctF":{"name":"tryThen(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE6tryMap2on5token_ACyqd__sAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgqd__xKctlF":{"name":"tryMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMap(on:token:_:)":{"name":"tryFlatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE10tryFlatMap2on5token_ACyqd__sAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyqd__qd_0_GxKctsADRd_0_r0_lF":{"name":"tryFlatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE10tryRecover2on5token_ACyxsAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgxsAD_pKctF":{"name":"tryRecover(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two Promise
s compare as equal if they represent the same promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV11cancellableAA0B11CancellableVvp":{"name":"cancellable","abstract":"Returns a value that can be used to cancel this promise without holding onto the full promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5ErrorR_rlE4withACyxq_Gs6ResultOyxq_G_tcfc":{"name":"init(with:)","abstract":"Returns a Promise
that is already resolved with the given result.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9withTokenyAA0dB0Vyxq_GAA0b12InvalidationD0VF":{"name":"withToken(_:)","abstract":"Returns a new TokenPromise
that wraps the receiver.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on9fulfilled5afterACyxq_GAA0B7ContextO_xSdtcfc":{"name":"init(on:fulfilled:after:)","abstract":"Returns a Promise
that fulfills with the given value after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on8rejected5afterACyxq_GAA0B7ContextO_q_Sdtcfc":{"name":"init(on:rejected:after:)","abstract":"Returns a Promise
that rejects with the given error after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on4with5afterACyxq_GAA0B7ContextO_AA0B6ResultOyxq_GSdtcfc":{"name":"init(on:with:after:)","abstract":"Returns a Promise
that resolves with the given result after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV5delay2on_ACyxq_GAA0B7ContextO_SdtF":{"name":"delay(on:_:)","abstract":"Returns a new Promise
that adopts the receiver’s result after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7timeout2on5delayACyxAA0B12TimeoutErrorOyq_GGAA0B7ContextO_SdtF":{"name":"timeout(on:delay:)","abstract":"Returns a Promise
that is rejected with an error if the receiver does not resolve within","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE7timeout2on5delayACyxsAD_pGAA0B7ContextO_SdtF":{"name":"timeout(on:delay:)","abstract":"
Returns a Promise
that is rejected with an error if the receiver does not resolve within","parent_name":"Promise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV8Resolvera":{"name":"Resolver","abstract":"
The type of the promise resolver. See Promise<Value,Error>.Resolver
.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV2on_ACyxq_GAA0C7ContextO_yAA0C0V8ResolverVyxq__Gctcfc":{"name":"init(on:_:)","abstract":"Returns a new DelayedPromise
that can be resolved with the given block.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV7promiseAA0C0Vyxq_Gvp":{"name":"promise","abstract":"Returns a Promise
that asynchronously contains the value of the computation.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two DelayedPromise
s compare as equal if they would produce equal Promise
s.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html":{"name":"DelayedPromise","abstract":"DelayedPromise
is like a Promise
but it doesn’t invoke its callback until the .promise
"},"Structs/Promise.html":{"name":"Promise","abstract":"
A Promise
is a construct that will eventually hold a value or error, and can invoke callbacks"},"Structs/PromiseCancellable.html":{"name":"PromiseCancellable","abstract":"
A type that can be used to cancel a promise without holding onto the full promise.
"},"Structs/PromiseInvalidationToken.html":{"name":"PromiseInvalidationToken","abstract":"An invalidation token that can be used to cancel callbacks registered to a Promise
.
"},"Structs/TokenPromise.html":{"name":"TokenPromise","abstract":"A Promise
adapter that automatically applies a PromiseInvalidationToken
.
"},"Functions.html#/s:12Tomorrowland4when9fulfilled3qos15cancelOnFailureAA7PromiseVySayxGq_GSayAGyxq_GG_8Dispatch0I3QoSV0J6SClassOSbtr0_lF":{"name":"when(fulfilled:qos:cancelOnFailure:)","abstract":"Waits on an array of Promise
s and returns a Promise
that is fulfilled with an array of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled_____3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_q2_q3_tq4_GAGyxq4_G_AGyq_q4_GAGyq0_q4_GAGyq1_q4_GAGyq2_q4_GAGyq3_q4_G8Dispatch0I3QoSV0J6SClassOSbtr5_lF":{"name":"when(fulfilled:_:_:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled____3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_q2_tq3_GAGyxq3_G_AGyq_q3_GAGyq0_q3_GAGyq1_q3_GAGyq2_q3_G8Dispatch0I3QoSV0J6SClassOSbtr4_lF":{"name":"when(fulfilled:_:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled___3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_tq2_GAGyxq2_G_AGyq_q2_GAGyq0_q2_GAGyq1_q2_G8Dispatch0I3QoSV0J6SClassOSbtr3_lF":{"name":"when(fulfilled:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled__3qos15cancelOnFailureAA7PromiseVyx_q_q0_tq1_GAGyxq1_G_AGyq_q1_GAGyq0_q1_G8Dispatch0I3QoSV0J6SClassOSbtr2_lF":{"name":"when(fulfilled:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled_3qos15cancelOnFailureAA7PromiseVyx_q_tq0_GAGyxq0_G_AGyq_q0_G8Dispatch0I3QoSV0J6SClassOSbtr1_lF":{"name":"when(fulfilled:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when5first15cancelRemainingAA7PromiseVyxq_GSayAGG_Sbtr0_lF":{"name":"when(first:cancelRemaining:)","abstract":"
Returns a Promise
that is resolved with the result of the first resolved input Promise
.
"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorO8timedOutyACyxGAEmlF":{"name":"timedOut","abstract":"The promise did not resolve within the given interval.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorO8rejectedyACyxGxcAEmlF":{"name":"rejected(_:)","abstract":"The promise was rejected with an error.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorOAASQRzlE2eeoiySbACyxG_AEtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorOAASQRzlE2neoiySbACyxG_AEtFZ":{"name":"!=(_:_:)","abstract":"Returns a Boolean value indicating whether two values are not equal.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseTimeoutError"},"Enums/NoError.html#/s:12Tomorrowland7NoErrorO2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"NoError"},"Enums/NoError.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"NoError"},"Enums/NoError.html#/s:Se4fromxs7Decoder_p_tKcfc":{"name":"init(from:)","parent_name":"NoError"},"Enums/NoError.html#/s:SE6encode2toys7Encoder_p_tKF":{"name":"encode(to:)","parent_name":"NoError"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5valueyACyxq_GxcAEmr0_lF":{"name":"value(_:)","abstract":"The value the promise was fulfilled with.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5erroryACyxq_Gq_cAEmr0_lF":{"name":"error(_:)","abstract":"The error the promise was rejected with.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO9cancelledyACyxq_GAEmr0_lF":{"name":"cancelled","abstract":"The promise was cancelled.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5valuexSgvp":{"name":"value","abstract":"Returns the contained value if the result is .value
, otherwise nil
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5errorq_Sgvp":{"name":"error","abstract":"Returns the contained error if the result is .error
, otherwise nil
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO11isCancelledSbvp":{"name":"isCancelled","abstract":"Returns true
if the result is .cancelled
, otherwise false
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO3mapyACyqd__q_Gqd__xKXEKlF":{"name":"map(_:)","abstract":"Maps a successful result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO8mapErroryACyxqd__Gqd__q_KXEKlF":{"name":"mapError(_:)","abstract":"Maps a rejected result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO7flatMapyACyqd__q_GAExKXEKlF":{"name":"flatMap(_:)","abstract":"Maps a successful result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO12flatMapErroryACyxqd__GAEq_KXEKlF":{"name":"flatMapError(_:)","abstract":"Maps a rejected result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAASQRzSQR_rlE2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAASQRzSQR_rlE2neoiySbACyxq_G_AEtFZ":{"name":"!=(_:_:)","abstract":"Returns a Boolean value indicating whether two values are not equal.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:SE6encode2toys7Encoder_p_tKF":{"name":"encode(to:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:Se4fromxs7Decoder_p_tKcfc":{"name":"init(from:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAAs5ErrorR_rlEyACyxq_Gs0C0Oyxq_Gcfc":{"name":"init(_:)","abstract":"Returns a PromiseResult
from a Result
.
","parent_name":"PromiseResult"},"Enums/PromiseCallbackError.html#/c:@M@Tomorrowland@E@TWLPromiseCallbackError@TWLPromiseCallbackErrorAPIMismatch":{"name":"apiMismatch","abstract":"The callback did not conform to the expected API.
","parent_name":"PromiseCallbackError"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO4mainyA2CmF":{"name":"main","abstract":"Execute on the main queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO10backgroundyA2CmF":{"name":"background","abstract":"Execute on a dispatch queue with the .background
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO7utilityyA2CmF":{"name":"utility","abstract":"Execute on a dispatch queue with the .utility
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO7defaultyA2CmF":{"name":"default","abstract":"Execute on a dispatch queue with the .default
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO13userInitiatedyA2CmF":{"name":"userInitiated","abstract":"Execute on a dispatch queue with the .userInitiated
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO15userInteractiveyA2CmF":{"name":"userInteractive","abstract":"Execute on a dispatch queue with the .userInteractive
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO5queueyACSo012OS_dispatch_D0CcACmF":{"name":"queue(_:)","abstract":"Execute on the specified dispatch queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO14operationQueueyACSo011NSOperationE0CcACmF":{"name":"operationQueue(_:)","abstract":"Execute on the specified operation queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO9immediateyA2CmF":{"name":"immediate","abstract":"Execute synchronously.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO4autoACvpZ":{"name":"auto","abstract":"Returns .main
when accessed from the main thread, otherwise .default
.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO3qosAC8Dispatch0E3QoSV0F6SClassO_tcfc":{"name":"init(qos:)","abstract":"Returns the PromiseContext
that corresponds to a given Dispatch QoS class.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html":{"name":"PromiseContext","abstract":"The context in which a Promise body or callback is evaluated.
"},"Enums/PromiseCallbackError.html":{"name":"PromiseCallbackError","abstract":"An error potentially returned from Promise.Resolver.handleCallback(isCancelError:)
.
"},"Enums/PromiseResult.html":{"name":"PromiseResult","abstract":"The result of a resolved promise.
"},"Enums/NoError.html":{"name":"NoError","abstract":"NoError
is a type that cannot be constructed.
"},"Enums/PromiseTimeoutError.html":{"name":"PromiseTimeoutError","abstract":"The error type returned from Promise.timeout
.
"},"Enums.html":{"name":"Enumerations","abstract":"The following enumerations are available globally.
"},"Functions.html":{"name":"Functions","abstract":"The following functions are available globally.
"},"Structs.html":{"name":"Structures","abstract":"The following structures are available globally.
"},"Typealiases.html":{"name":"Type Aliases","abstract":"The following type aliases are available globally.
"}}
\ No newline at end of file
diff --git a/docs/docsets/Tomorrowland.docset/Contents/Resources/docSet.dsidx b/docs/docsets/Tomorrowland.docset/Contents/Resources/docSet.dsidx
index 86e5e0a..84dc06d 100644
Binary files a/docs/docsets/Tomorrowland.docset/Contents/Resources/docSet.dsidx and b/docs/docsets/Tomorrowland.docset/Contents/Resources/docSet.dsidx differ
diff --git a/docs/docsets/Tomorrowland.tgz b/docs/docsets/Tomorrowland.tgz
index 41afa40..ed44768 100644
Binary files a/docs/docsets/Tomorrowland.tgz and b/docs/docsets/Tomorrowland.tgz differ
diff --git a/docs/index.html b/docs/index.html
index fa2a3ec..fb862bb 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -115,7 +115,7 @@
Tomorrowland
-Manually
You can add Tomorrowland to your workspace manually like any other project and add the resulting Tomorrowland.framework
to your application’s frameworks.
Carthage
-github "lilyball/Tomorrowland" ~> 0.5.0
+github "lilyball/Tomorrowland" ~> 1.0
+
+The project file is configured to use Swift 5. The code can be compiled against Swift 4.2 instead, but I’m not aware of any way to instruct Carthage to override the
+swift version during compilation.
CocoaPods
-pod 'Tomorrowland', '~> 0.5.0'
+pod 'Tomorrowland', '~> 1.0'
+
+The podspec declares support for both Swift 4.2 and Swift 5.0, but selecting the Swift version requires using CoocaPods 1.7.0 or later. When using CocoaPods 1.6
+or earlier the Swift version will default to 5.0.
SwiftPM
Tomorrowland currently relies on a private Obj-C module for its atomics. This arrangement means it is not compatible with Swift Package Manager (as adding
@@ -328,6 +334,14 @@
Cancelling and Invalidation
}
}
+Invalidation token chaining
+
+PromiseInvalidationToken
s can be arranged in a tree such that invalidating one token will cascade this invalidation down to other tokens. This is
+accomplished by calling childToken.chainInvalidation(from: parentToken)
. Practically speaking this is no different than just manually invalidating each
+child token yourself after invalidating the parent token, but it’s provided as a convenience to make it easy to have fine-grained invalidation control while also having
+a simple way to bulk-invalidate tokens. For example, you might have separate tokens for different view controllers that all chain invalidation from a single token that
+gets invalidated when the user logs out, thus automatically invalidating all your user-dependent network requests at once while still allowing each view controller the
+ability to invalidate just its own requests independently.
TokenPromise
In order to avoid the repetition of passing a PromiseInvalidationToken
to multiple Promise
methods as well as cancelling the resulting promise, a type
@@ -430,6 +444,23 @@
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be dual licensed as above, without any additional terms or conditions.
Version History
+v1.0.0
+
+
+- Fix a rather serious bug where
PromiseInvalidationToken
s would not deinit as long as any promise whose callback was tied to the token was still unresolved.
+This meant that the default invalidateOnDeinit
behavior would not trigger and the callback would still fire even though there were no more external references
+to the token, and this meant any promises configured to be cancelled when the promise invalidated would not cancel. Tokens used purely for
+requestCancelOnInvalidate(_:)
would still deallocate, and tokens would still deallocate after any associated promises had resolved.
+- Tweak the atomic memory ordering used in
PromiseInvalidationToken
s. After a careful re-reading I don’t believe I was issuing the correct fences previously,
+making it possible for tokens whose associated promise callbacks were executing concurrently with a call to requestCancelOnInvalidate(_:)
to read the
+wrong generation value, and for tokens that had requestCancelOnInvalidate(_:)
invoked concurrently on multiple threads to corrupt the generation.
+- Add
PromiseInvalidationToken.chainInvalidation(from:)
to invalidate a token whenever another token invalidates. This allows for building a tree of
+tokens in order to have both fine-grained and bulk invalidation at the same time. Tokens chained together this way stay chained forever (#43).
+- Update project file to Swift 5.0. The source already supported this. This change should only affect people using Carthage or anyone adding building this
+framework from source.
+- Update the podspec to list both Swift 4.2 and Swift 5.0. With CocoaPods 1.7.0 or later your
Podfile
can now declare which version of Swift it’s compatible with.
+For anyone using CocoaPods 1.6 or earlier it will default to Swift 5.0.
+
v0.6.0
@@ -551,7 +582,7 @@ v0.1
diff --git a/docs/search.json b/docs/search.json
index 73120a3..3a0ff68 100644
--- a/docs/search.json
+++ b/docs/search.json
@@ -1 +1 @@
-{"Typealiases.html#/s:12Tomorrowland17StdDelayedPromisea":{"name":"StdDelayedPromise","abstract":"StdDelayedPromise
is an alias for a DelayedPromise
whose error type is Swift.Error
.
"},"Typealiases.html#/s:12Tomorrowland10StdPromisea":{"name":"StdPromise","abstract":"StdPromise
is an alias for a Promise
whose error type is Swift.Error
.
"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5innerAA0C0Vyxq_Gvp":{"name":"inner","abstract":"The wrapped Promise
.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5tokenAA0c12InvalidationB0Vvp":{"name":"token","abstract":"The PromiseInvalidationToken
to use when invoking methods on the wrapped Promise
.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7promise5tokenACyxq_GAA0C0Vyxq_G_AA0c12InvalidationB0Vtcfc":{"name":"init(promise:token:)","abstract":"Returns a new TokenPromise
that wraps the given promise.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV4then2on_ACyxq_GAA0C7ContextO_yxctF":{"name":"then(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3map2on_ACyqd__q_GAA0C7ContextO_qd__xctlF":{"name":"map(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7flatMap2on_ACyqd__q_GAA0C7ContextO_AA0C0Vyqd__q_GxctlF":{"name":"flatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5catch2on_ACyxq_GAA0C7ContextO_yq_ctF":{"name":"catch(on:_:)","abstract":"Registers a callback that is invoked when the promise is rejected.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7recover2on_ACyxAA7NoErrorOGAA0C7ContextO_xq_ctF":{"name":"recover(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV8mapError2on_ACyxqd__GAA0C7ContextO_qd__q_ctlF":{"name":"mapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV12flatMapError2on_ACyxqd__GAA0C7ContextO_AA0C0Vyxqd__Gq_ctlF":{"name":"flatMapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV11tryMapError2on_ACyxs0F0_pGAA0C7ContextO_qd__q_KctsAFRd__lF":{"name":"tryMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV15tryFlatMapError2on_ACyxs0G0_pGAA0C7ContextO_AA0C0Vyxqd__Gq_KctsAFRd__lF":{"name":"tryFlatMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryMapError(on:_:)":{"name":"tryMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMapError(on:_:)":{"name":"tryFlatMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV6always2on_ACyxq_GAA0C7ContextO_yAA0C6ResultOyxq_GctF":{"name":"always(on:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV9mapResult2on0F8CompleteACyqd__qd_0_GAA0C7ContextO_AA0cE0Oyqd__qd_0_GAKyxq_Gctr0_lF":{"name":"mapResult(on:onComplete:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV13flatMapResult2on_ACyqd__qd_0_GAA0C7ContextO_AA0C0Vyqd__qd_0_GAA0cF0Oyxq_Gctr0_lF":{"name":"flatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV12tryMapResult2on_ACyqd__s5Error_pGAA0C7ContextO_AA0cF0Oyqd__qd_0_GAKyxq_GKctsAFRd_0_r0_lF":{"name":"tryMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV16tryFlatMapResult2on_ACyqd__s5Error_pGAA0C7ContextO_AA0C0Vyqd__qd_0_GAA0cG0Oyxq_GKctsAFRd_0_r0_lF":{"name":"tryFlatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryMapResult(on:_:)":{"name":"tryMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMapResult(on:_:)":{"name":"tryFlatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3tap2on_ACyxq_GAA0C7ContextO_yAA0C6ResultOyxq_GctF":{"name":"tap(on:_:)","abstract":"
Registers a callback that will be invoked when the promise is resolved without affecting behavior.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3tapACyxq_GyF":{"name":"tap()","abstract":"Returns a new TokenPromise
that adopts the result of the receiver without affecting its","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV8onCancel0D0_ACyxq_GAA0C7ContextO_yyctF":{"name":"onCancel(on:_:)","abstract":"
Registers a callback that will be invoked when the promise is cancelled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV4forkyACyxq_GyAEKXEKF":{"name":"fork(_:)","abstract":"Passes the TokenPromise
to a block and then returns the TokenPromise
for further","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV14ignoringCancelACyxq_GyF":{"name":"ignoringCancel()","abstract":"
Returns a new TokenPromise
that adopts the value of the receiver but ignores cancel","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE7tryThen2on_ACyxsAD_pGAA0C7ContextO_yxKctF":{"name":"tryThen(on:_:)","abstract":"
Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE6tryMap2on_ACyqd__sAD_pGAA0C7ContextO_qd__xKctlF":{"name":"tryMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMap(on:_:)":{"name":"tryFlatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE10tryFlatMap2on_ACyqd__sAD_pGAA0C7ContextO_AA0C0Vyqd__qd_0_GxKctsADRd_0_r0_lF":{"name":"tryFlatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE10tryRecover2on_ACyxsAD_pGAA0C7ContextO_xsAD_pKctF":{"name":"tryRecover(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE010tryFlatMapD02on_ACyxsAD_pGAA0C7ContextO_AA0C0Vyxqd__GsAD_pKctsADRd__lF":{"name":"tryFlatMapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two TokenPromise
s compare as equal if they represent the same promise.
","parent_name":"TokenPromise"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV18invalidateOnDeinitACSb_tcfc":{"name":"init(invalidateOnDeinit:)","abstract":"Creates and returns a new PromiseInvalidationToken
.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV10invalidateyyF":{"name":"invalidate()","abstract":"Invalidates the token and cancels any associated promises.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25cancelWithoutInvalidatingyyF":{"name":"cancelWithoutInvalidating()","abstract":"Cancels any associated promises without invalidating the token.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25requestCancelOnInvalidateyyAA0B0Vyxq_Gr0_lF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Registers a Promise
to be requested to cancel automatically when the token is invalidated.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25requestCancelOnInvalidateyySo10TWLPromiseCyxq_GRlzCRl_Cr0_lF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Registers an ObjCPromise
to be requested to cancel automatically when the token is","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:s23CustomStringConvertibleP11descriptionSSvp":{"name":"description","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:s28CustomDebugStringConvertibleP16debugDescriptionSSvp":{"name":"debugDescription","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"
Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseInvalidationToken"},"Structs/PromiseCancellable.html#/s:12Tomorrowland18PromiseCancellableV13requestCancelyyF":{"name":"requestCancel()","abstract":"Requests cancellation of the promise this PromiseCancellable
was created from.
","parent_name":"PromiseCancellable"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7fulfill4withyx_tF":{"name":"fulfill(with:)","abstract":"Fulfills the promise with the given value.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV6reject4withyq__tF":{"name":"reject(with:)","abstract":"Rejects the promise with the given error.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV6cancelyyF":{"name":"cancel()","abstract":"Cancels the promise.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7resolve4withyAA0B6ResultOyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7resolve4withyACyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with another promise.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV15onRequestCancel0D0_yAA0B7ContextO_yAEyxq__GctF":{"name":"onRequestCancel(on:_:)","abstract":"Registers a block that will be invoked if requestCancel()
is invoked on the promise","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5Error_pRs_rlE7resolve4withyAA0B6ResultOyxqd__G_tsAFRd__lF":{"name":"resolve(with:)","abstract":"
Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5Error_pRs_rlE14handleCallback08isCancelD0yxSg_sAF_pSgtcSbsAF_pc_tF":{"name":"handleCallback(isCancelError:)","abstract":"Convenience method for handling framework callbacks.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5ErrorR_rlE7resolve4withys6ResultOyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html":{"name":"Resolver","abstract":"A Resolver
is used to fulfill, reject, or cancel its associated Promise
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6resultAA0B6ResultOyxq_GSgvp":{"name":"result","abstract":"Returns the result of the promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV16makeWithResolverACyxq_G_AC0E0Vyxq__GtyFZ":{"name":"makeWithResolver()","abstract":"Returns a Promise
and a Promise.Resolver
that can be used to fulfill that promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on_ACyxq_GAA0B7ContextO_yAC8ResolverVyxq__Gctcfc":{"name":"init(on:_:)","abstract":"Returns a new Promise
that will be resolved using the given block.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9fulfilledACyxq_Gx_tcfc":{"name":"init(fulfilled:)","abstract":"Returns a Promise
that is already fulfilled with the given value.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8rejectedACyxq_Gq__tcfc":{"name":"init(rejected:)","abstract":"Returns a Promise
that is already rejected with the given error.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4withACyxq_GAA0B6ResultOyxq_G_tcfc":{"name":"init(with:)","abstract":"Returns a Promise
that is already resolved with the given result.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4then2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyxctF":{"name":"then(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3map2on5token_ACyqd__q_GAA0B7ContextO_AA0B17InvalidationTokenVSgqd__xctlF":{"name":"map(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7flatMap2on5token_ACyqd__q_GAA0B7ContextO_AA0B17InvalidationTokenVSgAGxctlF":{"name":"flatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV5catch2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyq_ctF":{"name":"catch(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is rejected.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7recover2on5token_ACyxAA7NoErrorOGAA0B7ContextO_AA0B17InvalidationTokenVSgxq_ctF":{"name":"recover(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8mapError2on5token_ACyxqd__GAA0B7ContextO_AA0B17InvalidationTokenVSgqd__q_ctlF":{"name":"mapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV12flatMapError2on5token_ACyxqd__GAA0B7ContextO_AA0B17InvalidationTokenVSgAGq_ctlF":{"name":"flatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV11tryMapError2on5token_ACyxs0E0_pGAA0B7ContextO_AA0B17InvalidationTokenVSgqd__q_KctsAGRd__lF":{"name":"tryMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV15tryFlatMapError2on5token_ACyxs0F0_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyxqd__Gq_KctsAGRd__lF":{"name":"tryFlatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/tryMapError(on:token:_:)":{"name":"tryMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMapError(on:token:_:)":{"name":"tryFlatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6always2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyAA0B6ResultOyxq_GctF":{"name":"always(on:token:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9mapResult2on5token_ACyqd__qd_0_GAA0B7ContextO_AA0B17InvalidationTokenVSgAA0bD0Oyqd__qd_0_GANyxq_Gctr0_lF":{"name":"mapResult(on:token:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV13flatMapResult2on5token_ACyqd__qd_0_GAA0B7ContextO_AA0B17InvalidationTokenVSgAgA0bE0Oyxq_Gctr0_lF":{"name":"flatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV12tryMapResult2on5token_ACyqd__s5Error_pGAA0B7ContextO_AA0B17InvalidationTokenVSgAA0bE0Oyqd__qd_0_GAOyxq_GKctsAGRd_0_r0_lF":{"name":"tryMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV16tryFlatMapResult2on5token_ACyqd__s5Error_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyqd__qd_0_GAA0bF0Oyxq_GKctsAGRd_0_r0_lF":{"name":"tryFlatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/tryMapResult(on:token:_:)":{"name":"tryMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMapResult(on:token:_:)":{"name":"tryFlatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3tap2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyAA0B6ResultOyxq_GctF":{"name":"tap(on:token:_:)","abstract":"
Registers a callback that will be invoked when the promise is resolved without affecting behavior.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3tapACyxq_GyF":{"name":"tap()","abstract":"Returns a new Promise
that adopts the result of the receiver without affecting its behavior.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8onCancel0C05token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyyctF":{"name":"onCancel(on:token:_:)","abstract":"Registers a callback that will be invoked when the promise is cancelled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4forkyACyxq_GyAEKXEKF":{"name":"fork(_:)","abstract":"Passes the Promise
to a block and then returns the Promise
for further chaining.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV13requestCancelyyF":{"name":"requestCancel()","abstract":"Requests that the Promise
should be cancelled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV25requestCancelOnInvalidateyACyxq_GAA0B17InvalidationTokenVF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Requests that the Promise
should be cancelled when the token is invalidated.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV14ignoringCancelACyxq_GyF":{"name":"ignoringCancel()","abstract":"Returns a new Promise
that adopts the value of the receiver but ignores cancel requests.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6resultACyxq_GAA0B6ResultOyxq_G_tcfc":{"name":"init(result:)","abstract":"Undocumented
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on6result5afterACyxq_GAA0B7ContextO_AA0B6ResultOyxq_GSdtcfc":{"name":"init(on:result:after:)","abstract":"Undocumented
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV21requestCancelOnDeinityACyxq_GyXlF":{"name":"requestCancelOnDeinit(_:)","abstract":"Requests that the Promise
should be cancelled when the object deinits.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5ErrorR_rlE6upcastACyxsAD_pGvp":{"name":"upcast","abstract":"Returns a new promise with an error type of Swift.Error
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVA2A7NoErrorORs_rlE6upcastACyxs0D0_pGvp":{"name":"upcast","abstract":"Returns a new promise with an error type of Swift.Error
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE2on_ACyxsAD_pGAA0B7ContextO_yAC8ResolverVyxsAD_p_GKctcfc":{"name":"init(on:_:)","abstract":"Returns a new Promise
that will be resolved using the given block.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE7tryThen2on5token_ACyxsAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgyxKctF":{"name":"tryThen(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE6tryMap2on5token_ACyqd__sAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgqd__xKctlF":{"name":"tryMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMap(on:token:_:)":{"name":"tryFlatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE10tryFlatMap2on5token_ACyqd__sAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyqd__qd_0_GxKctsADRd_0_r0_lF":{"name":"tryFlatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE10tryRecover2on5token_ACyxsAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgxsAD_pKctF":{"name":"tryRecover(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two Promise
s compare as equal if they represent the same promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV11cancellableAA0B11CancellableVvp":{"name":"cancellable","abstract":"Returns a value that can be used to cancel this promise without holding onto the full promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5ErrorR_rlE4withACyxq_Gs6ResultOyxq_G_tcfc":{"name":"init(with:)","abstract":"Returns a Promise
that is already resolved with the given result.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9withTokenyAA0dB0Vyxq_GAA0b12InvalidationD0VF":{"name":"withToken(_:)","abstract":"Returns a new TokenPromise
that wraps the receiver.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on9fulfilled5afterACyxq_GAA0B7ContextO_xSdtcfc":{"name":"init(on:fulfilled:after:)","abstract":"Returns a Promise
that fulfills with the given value after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on8rejected5afterACyxq_GAA0B7ContextO_q_Sdtcfc":{"name":"init(on:rejected:after:)","abstract":"Returns a Promise
that rejects with the given error after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on4with5afterACyxq_GAA0B7ContextO_AA0B6ResultOyxq_GSdtcfc":{"name":"init(on:with:after:)","abstract":"Returns a Promise
that resolves with the given result after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV5delay2on_ACyxq_GAA0B7ContextO_SdtF":{"name":"delay(on:_:)","abstract":"Returns a new Promise
that adopts the receiver’s result after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7timeout2on5delayACyxAA0B12TimeoutErrorOyq_GGAA0B7ContextO_SdtF":{"name":"timeout(on:delay:)","abstract":"Returns a Promise
that is rejected with an error if the receiver does not resolve within","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE7timeout2on5delayACyxsAD_pGAA0B7ContextO_SdtF":{"name":"timeout(on:delay:)","abstract":"
Returns a Promise
that is rejected with an error if the receiver does not resolve within","parent_name":"Promise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV8Resolvera":{"name":"Resolver","abstract":"
The type of the promise resolver. See Promise<Value,Error>.Resolver
.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV2on_ACyxq_GAA0C7ContextO_yAA0C0V8ResolverVyxq__Gctcfc":{"name":"init(on:_:)","abstract":"Returns a new DelayedPromise
that can be resolved with the given block.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV7promiseAA0C0Vyxq_Gvp":{"name":"promise","abstract":"Returns a Promise
that asynchronously contains the value of the computation.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two DelayedPromise
s compare as equal if they would produce equal Promise
s.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html":{"name":"DelayedPromise","abstract":"DelayedPromise
is like a Promise
but it doesn’t invoke its callback until the .promise
"},"Structs/Promise.html":{"name":"Promise","abstract":"
A Promise
is a construct that will eventually hold a value or error, and can invoke callbacks"},"Structs/PromiseCancellable.html":{"name":"PromiseCancellable","abstract":"
A type that can be used to cancel a promise without holding onto the full promise.
"},"Structs/PromiseInvalidationToken.html":{"name":"PromiseInvalidationToken","abstract":"An invalidation token that can be used to cancel callbacks registered to a Promise
.
"},"Structs/TokenPromise.html":{"name":"TokenPromise","abstract":"A Promise
adapter that automatically applies a PromiseInvalidationToken
.
"},"Functions.html#/s:12Tomorrowland4when9fulfilled3qos15cancelOnFailureAA7PromiseVySayxGq_GSayAGyxq_GG_8Dispatch0I3QoSV0J6SClassOSbtr0_lF":{"name":"when(fulfilled:qos:cancelOnFailure:)","abstract":"Waits on an array of Promise
s and returns a Promise
that is fulfilled with an array of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled_____3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_q2_q3_tq4_GAGyxq4_G_AGyq_q4_GAGyq0_q4_GAGyq1_q4_GAGyq2_q4_GAGyq3_q4_G8Dispatch0I3QoSV0J6SClassOSbtr5_lF":{"name":"when(fulfilled:_:_:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled____3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_q2_tq3_GAGyxq3_G_AGyq_q3_GAGyq0_q3_GAGyq1_q3_GAGyq2_q3_G8Dispatch0I3QoSV0J6SClassOSbtr4_lF":{"name":"when(fulfilled:_:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled___3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_tq2_GAGyxq2_G_AGyq_q2_GAGyq0_q2_GAGyq1_q2_G8Dispatch0I3QoSV0J6SClassOSbtr3_lF":{"name":"when(fulfilled:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled__3qos15cancelOnFailureAA7PromiseVyx_q_q0_tq1_GAGyxq1_G_AGyq_q1_GAGyq0_q1_G8Dispatch0I3QoSV0J6SClassOSbtr2_lF":{"name":"when(fulfilled:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled_3qos15cancelOnFailureAA7PromiseVyx_q_tq0_GAGyxq0_G_AGyq_q0_G8Dispatch0I3QoSV0J6SClassOSbtr1_lF":{"name":"when(fulfilled:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when5first15cancelRemainingAA7PromiseVyxq_GSayAGG_Sbtr0_lF":{"name":"when(first:cancelRemaining:)","abstract":"
Returns a Promise
that is resolved with the result of the first resolved input Promise
.
"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorO8timedOutyACyxGAEmlF":{"name":"timedOut","abstract":"The promise did not resolve within the given interval.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorO8rejectedyACyxGxcAEmlF":{"name":"rejected(_:)","abstract":"The promise was rejected with an error.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorOAASQRzlE2eeoiySbACyxG_AEtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorOAASQRzlE2neoiySbACyxG_AEtFZ":{"name":"!=(_:_:)","abstract":"Returns a Boolean value indicating whether two values are not equal.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseTimeoutError"},"Enums/NoError.html#/s:12Tomorrowland7NoErrorO2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"NoError"},"Enums/NoError.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"NoError"},"Enums/NoError.html#/s:Se4fromxs7Decoder_p_tKcfc":{"name":"init(from:)","parent_name":"NoError"},"Enums/NoError.html#/s:SE6encode2toys7Encoder_p_tKF":{"name":"encode(to:)","parent_name":"NoError"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5valueyACyxq_GxcAEmr0_lF":{"name":"value(_:)","abstract":"The value the promise was fulfilled with.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5erroryACyxq_Gq_cAEmr0_lF":{"name":"error(_:)","abstract":"The error the promise was rejected with.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO9cancelledyACyxq_GAEmr0_lF":{"name":"cancelled","abstract":"The promise was cancelled.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5valuexSgvp":{"name":"value","abstract":"Returns the contained value if the result is .value
, otherwise nil
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5errorq_Sgvp":{"name":"error","abstract":"Returns the contained error if the result is .error
, otherwise nil
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO11isCancelledSbvp":{"name":"isCancelled","abstract":"Returns true
if the result is .cancelled
, otherwise false
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO3mapyACyqd__q_Gqd__xKXEKlF":{"name":"map(_:)","abstract":"Maps a successful result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO8mapErroryACyxqd__Gqd__q_KXEKlF":{"name":"mapError(_:)","abstract":"Maps a rejected result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO7flatMapyACyqd__q_GAExKXEKlF":{"name":"flatMap(_:)","abstract":"Maps a successful result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO12flatMapErroryACyxqd__GAEq_KXEKlF":{"name":"flatMapError(_:)","abstract":"Maps a rejected result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAASQRzSQR_rlE2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAASQRzSQR_rlE2neoiySbACyxq_G_AEtFZ":{"name":"!=(_:_:)","abstract":"Returns a Boolean value indicating whether two values are not equal.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:SE6encode2toys7Encoder_p_tKF":{"name":"encode(to:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:Se4fromxs7Decoder_p_tKcfc":{"name":"init(from:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAAs5ErrorR_rlEyACyxq_Gs0C0Oyxq_Gcfc":{"name":"init(_:)","abstract":"Returns a PromiseResult
from a Result
.
","parent_name":"PromiseResult"},"Enums/PromiseCallbackError.html#/c:@M@Tomorrowland@E@TWLPromiseCallbackError@TWLPromiseCallbackErrorAPIMismatch":{"name":"apiMismatch","abstract":"The callback did not conform to the expected API.
","parent_name":"PromiseCallbackError"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO4mainyA2CmF":{"name":"main","abstract":"Execute on the main queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO10backgroundyA2CmF":{"name":"background","abstract":"Execute on a dispatch queue with the .background
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO7utilityyA2CmF":{"name":"utility","abstract":"Execute on a dispatch queue with the .utility
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO7defaultyA2CmF":{"name":"default","abstract":"Execute on a dispatch queue with the .default
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO13userInitiatedyA2CmF":{"name":"userInitiated","abstract":"Execute on a dispatch queue with the .userInitiated
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO15userInteractiveyA2CmF":{"name":"userInteractive","abstract":"Execute on a dispatch queue with the .userInteractive
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO5queueyACSo012OS_dispatch_D0CcACmF":{"name":"queue(_:)","abstract":"Execute on the specified dispatch queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO14operationQueueyACSo011NSOperationE0CcACmF":{"name":"operationQueue(_:)","abstract":"Execute on the specified operation queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO9immediateyA2CmF":{"name":"immediate","abstract":"Execute synchronously.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO4autoACvpZ":{"name":"auto","abstract":"Returns .main
when accessed from the main thread, otherwise .default
.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO3qosAC8Dispatch0E3QoSV0F6SClassO_tcfc":{"name":"init(qos:)","abstract":"Returns the PromiseContext
that corresponds to a given Dispatch QoS class.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html":{"name":"PromiseContext","abstract":"The context in which a Promise body or callback is evaluated.
"},"Enums/PromiseCallbackError.html":{"name":"PromiseCallbackError","abstract":"An error potentially returned from Promise.Resolver.handleCallback(isCancelError:)
.
"},"Enums/PromiseResult.html":{"name":"PromiseResult","abstract":"The result of a resolved promise.
"},"Enums/NoError.html":{"name":"NoError","abstract":"NoError
is a type that cannot be constructed.
"},"Enums/PromiseTimeoutError.html":{"name":"PromiseTimeoutError","abstract":"The error type returned from Promise.timeout
.
"},"Enums.html":{"name":"Enumerations","abstract":"The following enumerations are available globally.
"},"Functions.html":{"name":"Functions","abstract":"The following functions are available globally.
"},"Structs.html":{"name":"Structures","abstract":"The following structures are available globally.
"},"Typealiases.html":{"name":"Type Aliases","abstract":"The following type aliases are available globally.
"}}
\ No newline at end of file
+{"Typealiases.html#/s:12Tomorrowland17StdDelayedPromisea":{"name":"StdDelayedPromise","abstract":"StdDelayedPromise
is an alias for a DelayedPromise
whose error type is Swift.Error
.
"},"Typealiases.html#/s:12Tomorrowland10StdPromisea":{"name":"StdPromise","abstract":"StdPromise
is an alias for a Promise
whose error type is Swift.Error
.
"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5innerAA0C0Vyxq_Gvp":{"name":"inner","abstract":"The wrapped Promise
.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5tokenAA0c12InvalidationB0Vvp":{"name":"token","abstract":"The PromiseInvalidationToken
to use when invoking methods on the wrapped Promise
.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7promise5tokenACyxq_GAA0C0Vyxq_G_AA0c12InvalidationB0Vtcfc":{"name":"init(promise:token:)","abstract":"Returns a new TokenPromise
that wraps the given promise.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV4then2on_ACyxq_GAA0C7ContextO_yxctF":{"name":"then(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3map2on_ACyqd__q_GAA0C7ContextO_qd__xctlF":{"name":"map(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7flatMap2on_ACyqd__q_GAA0C7ContextO_AA0C0Vyqd__q_GxctlF":{"name":"flatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV5catch2on_ACyxq_GAA0C7ContextO_yq_ctF":{"name":"catch(on:_:)","abstract":"Registers a callback that is invoked when the promise is rejected.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV7recover2on_ACyxAA7NoErrorOGAA0C7ContextO_xq_ctF":{"name":"recover(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV8mapError2on_ACyxqd__GAA0C7ContextO_qd__q_ctlF":{"name":"mapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV12flatMapError2on_ACyxqd__GAA0C7ContextO_AA0C0Vyxqd__Gq_ctlF":{"name":"flatMapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV11tryMapError2on_ACyxs0F0_pGAA0C7ContextO_qd__q_KctsAFRd__lF":{"name":"tryMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV15tryFlatMapError2on_ACyxs0G0_pGAA0C7ContextO_AA0C0Vyxqd__Gq_KctsAFRd__lF":{"name":"tryFlatMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryMapError(on:_:)":{"name":"tryMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMapError(on:_:)":{"name":"tryFlatMapError(on:_:)","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV6always2on_ACyxq_GAA0C7ContextO_yAA0C6ResultOyxq_GctF":{"name":"always(on:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV9mapResult2on0F8CompleteACyqd__qd_0_GAA0C7ContextO_AA0cE0Oyqd__qd_0_GAKyxq_Gctr0_lF":{"name":"mapResult(on:onComplete:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV13flatMapResult2on_ACyqd__qd_0_GAA0C7ContextO_AA0C0Vyqd__qd_0_GAA0cF0Oyxq_Gctr0_lF":{"name":"flatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV12tryMapResult2on_ACyqd__s5Error_pGAA0C7ContextO_AA0cF0Oyqd__qd_0_GAKyxq_GKctsAFRd_0_r0_lF":{"name":"tryMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV16tryFlatMapResult2on_ACyqd__s5Error_pGAA0C7ContextO_AA0C0Vyqd__qd_0_GAA0cG0Oyxq_GKctsAFRd_0_r0_lF":{"name":"tryFlatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryMapResult(on:_:)":{"name":"tryMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMapResult(on:_:)":{"name":"tryFlatMapResult(on:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3tap2on_ACyxq_GAA0C7ContextO_yAA0C6ResultOyxq_GctF":{"name":"tap(on:_:)","abstract":"
Registers a callback that will be invoked when the promise is resolved without affecting behavior.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV3tapACyxq_GyF":{"name":"tap()","abstract":"Returns a new TokenPromise
that adopts the result of the receiver without affecting its","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV8onCancel0D0_ACyxq_GAA0C7ContextO_yyctF":{"name":"onCancel(on:_:)","abstract":"
Registers a callback that will be invoked when the promise is cancelled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV4forkyACyxq_GyAEKXEKF":{"name":"fork(_:)","abstract":"Passes the TokenPromise
to a block and then returns the TokenPromise
for further","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV14ignoringCancelACyxq_GyF":{"name":"ignoringCancel()","abstract":"
Returns a new TokenPromise
that adopts the value of the receiver but ignores cancel","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE7tryThen2on_ACyxsAD_pGAA0C7ContextO_yxKctF":{"name":"tryThen(on:_:)","abstract":"
Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE6tryMap2on_ACyqd__sAD_pGAA0C7ContextO_qd__xKctlF":{"name":"tryMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/tryFlatMap(on:_:)":{"name":"tryFlatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE10tryFlatMap2on_ACyqd__sAD_pGAA0C7ContextO_AA0C0Vyqd__qd_0_GxKctsADRd_0_r0_lF":{"name":"tryFlatMap(on:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE10tryRecover2on_ACyxsAD_pGAA0C7ContextO_xsAD_pKctF":{"name":"tryRecover(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseVAAs5Error_pRs_rlE010tryFlatMapD02on_ACyxsAD_pGAA0C7ContextO_AA0C0Vyxqd__GsAD_pKctsADRd__lF":{"name":"tryFlatMapError(on:_:)","abstract":"","parent_name":"TokenPromise"},"Structs/TokenPromise.html#/s:12Tomorrowland12TokenPromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two TokenPromise
s compare as equal if they represent the same promise.
","parent_name":"TokenPromise"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV18invalidateOnDeinitACSb_tcfc":{"name":"init(invalidateOnDeinit:)","abstract":"Creates and returns a new PromiseInvalidationToken
.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV10invalidateyyF":{"name":"invalidate()","abstract":"Invalidates the token and cancels any associated promises.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25cancelWithoutInvalidatingyyF":{"name":"cancelWithoutInvalidating()","abstract":"Cancels any associated promises without invalidating the token.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25requestCancelOnInvalidateyyAA0B0Vyxq_Gr0_lF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Registers a Promise
to be requested to cancel automatically when the token is invalidated.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV25requestCancelOnInvalidateyySo10TWLPromiseCyxq_GRlzCRl_Cr0_lF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Registers an ObjCPromise
to be requested to cancel automatically when the token is","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV05chainC04from34includingCancelWithoutInvalidatingyAC_SbtF":{"name":"chainInvalidation(from:includingCancelWithoutInvalidating:)","abstract":"
Invalidates the token whenever another token is invalidated.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:s23CustomStringConvertibleP11descriptionSSvp":{"name":"description","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:s28CustomDebugStringConvertibleP16debugDescriptionSSvp":{"name":"debugDescription","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:12Tomorrowland24PromiseInvalidationTokenV2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseInvalidationToken"},"Structs/PromiseInvalidationToken.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseInvalidationToken"},"Structs/PromiseCancellable.html#/s:12Tomorrowland18PromiseCancellableV13requestCancelyyF":{"name":"requestCancel()","abstract":"Requests cancellation of the promise this PromiseCancellable
was created from.
","parent_name":"PromiseCancellable"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7fulfill4withyx_tF":{"name":"fulfill(with:)","abstract":"Fulfills the promise with the given value.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV6reject4withyq__tF":{"name":"reject(with:)","abstract":"Rejects the promise with the given error.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV6cancelyyF":{"name":"cancel()","abstract":"Cancels the promise.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7resolve4withyAA0B6ResultOyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV7resolve4withyACyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with another promise.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverV15onRequestCancel0D0_yAA0B7ContextO_yAEyxq__GctF":{"name":"onRequestCancel(on:_:)","abstract":"Registers a block that will be invoked if requestCancel()
is invoked on the promise","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5Error_pRs_rlE7resolve4withyAA0B6ResultOyxqd__G_tsAFRd__lF":{"name":"resolve(with:)","abstract":"
Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5Error_pRs_rlE14handleCallback08isCancelD0yxSg_sAF_pSgtcSbsAF_pc_tF":{"name":"handleCallback(isCancelError:)","abstract":"Convenience method for handling framework callbacks.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html#/s:12Tomorrowland7PromiseV8ResolverVAAs5ErrorR_rlE7resolve4withys6ResultOyxq_G_tF":{"name":"resolve(with:)","abstract":"Resolves the promise with the given result.
","parent_name":"Resolver"},"Structs/Promise/Resolver.html":{"name":"Resolver","abstract":"A Resolver
is used to fulfill, reject, or cancel its associated Promise
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6resultAA0B6ResultOyxq_GSgvp":{"name":"result","abstract":"Returns the result of the promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV16makeWithResolverACyxq_G_AC0E0Vyxq__GtyFZ":{"name":"makeWithResolver()","abstract":"Returns a Promise
and a Promise.Resolver
that can be used to fulfill that promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on_ACyxq_GAA0B7ContextO_yAC8ResolverVyxq__Gctcfc":{"name":"init(on:_:)","abstract":"Returns a new Promise
that will be resolved using the given block.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9fulfilledACyxq_Gx_tcfc":{"name":"init(fulfilled:)","abstract":"Returns a Promise
that is already fulfilled with the given value.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8rejectedACyxq_Gq__tcfc":{"name":"init(rejected:)","abstract":"Returns a Promise
that is already rejected with the given error.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4withACyxq_GAA0B6ResultOyxq_G_tcfc":{"name":"init(with:)","abstract":"Returns a Promise
that is already resolved with the given result.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4then2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyxctF":{"name":"then(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3map2on5token_ACyqd__q_GAA0B7ContextO_AA0B17InvalidationTokenVSgqd__xctlF":{"name":"map(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7flatMap2on5token_ACyqd__q_GAA0B7ContextO_AA0B17InvalidationTokenVSgAGxctlF":{"name":"flatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV5catch2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyq_ctF":{"name":"catch(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is rejected.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7recover2on5token_ACyxAA7NoErrorOGAA0B7ContextO_AA0B17InvalidationTokenVSgxq_ctF":{"name":"recover(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8mapError2on5token_ACyxqd__GAA0B7ContextO_AA0B17InvalidationTokenVSgqd__q_ctlF":{"name":"mapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV12flatMapError2on5token_ACyxqd__GAA0B7ContextO_AA0B17InvalidationTokenVSgAGq_ctlF":{"name":"flatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV11tryMapError2on5token_ACyxs0E0_pGAA0B7ContextO_AA0B17InvalidationTokenVSgqd__q_KctsAGRd__lF":{"name":"tryMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV15tryFlatMapError2on5token_ACyxs0F0_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyxqd__Gq_KctsAGRd__lF":{"name":"tryFlatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/tryMapError(on:token:_:)":{"name":"tryMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMapError(on:token:_:)":{"name":"tryFlatMapError(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6always2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyAA0B6ResultOyxq_GctF":{"name":"always(on:token:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9mapResult2on5token_ACyqd__qd_0_GAA0B7ContextO_AA0B17InvalidationTokenVSgAA0bD0Oyqd__qd_0_GANyxq_Gctr0_lF":{"name":"mapResult(on:token:_:)","abstract":"Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV13flatMapResult2on5token_ACyqd__qd_0_GAA0B7ContextO_AA0B17InvalidationTokenVSgAgA0bE0Oyxq_Gctr0_lF":{"name":"flatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV12tryMapResult2on5token_ACyqd__s5Error_pGAA0B7ContextO_AA0B17InvalidationTokenVSgAA0bE0Oyqd__qd_0_GAOyxq_GKctsAGRd_0_r0_lF":{"name":"tryMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV16tryFlatMapResult2on5token_ACyqd__s5Error_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyqd__qd_0_GAA0bF0Oyxq_GKctsAGRd_0_r0_lF":{"name":"tryFlatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/tryMapResult(on:token:_:)":{"name":"tryMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMapResult(on:token:_:)":{"name":"tryFlatMapResult(on:token:_:)","abstract":"
Registers a callback that will be invoked with the promise result, no matter what it is, and","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3tap2on5token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyAA0B6ResultOyxq_GctF":{"name":"tap(on:token:_:)","abstract":"
Registers a callback that will be invoked when the promise is resolved without affecting behavior.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV3tapACyxq_GyF":{"name":"tap()","abstract":"Returns a new Promise
that adopts the result of the receiver without affecting its behavior.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV8onCancel0C05token_ACyxq_GAA0B7ContextO_AA0B17InvalidationTokenVSgyyctF":{"name":"onCancel(on:token:_:)","abstract":"Registers a callback that will be invoked when the promise is cancelled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV4forkyACyxq_GyAEKXEKF":{"name":"fork(_:)","abstract":"Passes the Promise
to a block and then returns the Promise
for further chaining.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV13requestCancelyyF":{"name":"requestCancel()","abstract":"Requests that the Promise
should be cancelled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV25requestCancelOnInvalidateyACyxq_GAA0B17InvalidationTokenVF":{"name":"requestCancelOnInvalidate(_:)","abstract":"Requests that the Promise
should be cancelled when the token is invalidated.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV14ignoringCancelACyxq_GyF":{"name":"ignoringCancel()","abstract":"Returns a new Promise
that adopts the value of the receiver but ignores cancel requests.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV6resultACyxq_GAA0B6ResultOyxq_G_tcfc":{"name":"init(result:)","abstract":"Undocumented
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on6result5afterACyxq_GAA0B7ContextO_AA0B6ResultOyxq_GSdtcfc":{"name":"init(on:result:after:)","abstract":"Undocumented
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV21requestCancelOnDeinityACyxq_GyXlF":{"name":"requestCancelOnDeinit(_:)","abstract":"Requests that the Promise
should be cancelled when the object deinits.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5ErrorR_rlE6upcastACyxsAD_pGvp":{"name":"upcast","abstract":"Returns a new promise with an error type of Swift.Error
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVA2A7NoErrorORs_rlE6upcastACyxs0D0_pGvp":{"name":"upcast","abstract":"Returns a new promise with an error type of Swift.Error
.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE2on_ACyxsAD_pGAA0B7ContextO_yAC8ResolverVyxsAD_p_GKctcfc":{"name":"init(on:_:)","abstract":"Returns a new Promise
that will be resolved using the given block.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE7tryThen2on5token_ACyxsAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgyxKctF":{"name":"tryThen(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE6tryMap2on5token_ACyqd__sAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgqd__xKctlF":{"name":"tryMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/tryFlatMap(on:token:_:)":{"name":"tryFlatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE10tryFlatMap2on5token_ACyqd__sAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgACyqd__qd_0_GxKctsADRd_0_r0_lF":{"name":"tryFlatMap(on:token:_:)","abstract":"Registers a callback that is invoked when the promise is fulfilled.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE10tryRecover2on5token_ACyxsAD_pGAA0B7ContextO_AA0B17InvalidationTokenVSgxsAD_pKctF":{"name":"tryRecover(on:token:_:)","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two Promise
s compare as equal if they represent the same promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV11cancellableAA0B11CancellableVvp":{"name":"cancellable","abstract":"Returns a value that can be used to cancel this promise without holding onto the full promise.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5ErrorR_rlE4withACyxq_Gs6ResultOyxq_G_tcfc":{"name":"init(with:)","abstract":"Returns a Promise
that is already resolved with the given result.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV9withTokenyAA0dB0Vyxq_GAA0b12InvalidationD0VF":{"name":"withToken(_:)","abstract":"Returns a new TokenPromise
that wraps the receiver.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on9fulfilled5afterACyxq_GAA0B7ContextO_xSdtcfc":{"name":"init(on:fulfilled:after:)","abstract":"Returns a Promise
that fulfills with the given value after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on8rejected5afterACyxq_GAA0B7ContextO_q_Sdtcfc":{"name":"init(on:rejected:after:)","abstract":"Returns a Promise
that rejects with the given error after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV2on4with5afterACyxq_GAA0B7ContextO_AA0B6ResultOyxq_GSdtcfc":{"name":"init(on:with:after:)","abstract":"Returns a Promise
that resolves with the given result after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV5delay2on_ACyxq_GAA0B7ContextO_SdtF":{"name":"delay(on:_:)","abstract":"Returns a new Promise
that adopts the receiver’s result after a delay.
","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseV7timeout2on5delayACyxAA0B12TimeoutErrorOyq_GGAA0B7ContextO_SdtF":{"name":"timeout(on:delay:)","abstract":"Returns a Promise
that is rejected with an error if the receiver does not resolve within","parent_name":"Promise"},"Structs/Promise.html#/s:12Tomorrowland7PromiseVAAs5Error_pRs_rlE7timeout2on5delayACyxsAD_pGAA0B7ContextO_SdtF":{"name":"timeout(on:delay:)","abstract":"
Returns a Promise
that is rejected with an error if the receiver does not resolve within","parent_name":"Promise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV8Resolvera":{"name":"Resolver","abstract":"
The type of the promise resolver. See Promise<Value,Error>.Resolver
.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV2on_ACyxq_GAA0C7ContextO_yAA0C0V8ResolverVyxq__Gctcfc":{"name":"init(on:_:)","abstract":"Returns a new DelayedPromise
that can be resolved with the given block.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV7promiseAA0C0Vyxq_Gvp":{"name":"promise","abstract":"Returns a Promise
that asynchronously contains the value of the computation.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html#/s:12Tomorrowland14DelayedPromiseV2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Two DelayedPromise
s compare as equal if they would produce equal Promise
s.
","parent_name":"DelayedPromise"},"Structs/DelayedPromise.html":{"name":"DelayedPromise","abstract":"DelayedPromise
is like a Promise
but it doesn’t invoke its callback until the .promise
"},"Structs/Promise.html":{"name":"Promise","abstract":"
A Promise
is a construct that will eventually hold a value or error, and can invoke callbacks"},"Structs/PromiseCancellable.html":{"name":"PromiseCancellable","abstract":"
A type that can be used to cancel a promise without holding onto the full promise.
"},"Structs/PromiseInvalidationToken.html":{"name":"PromiseInvalidationToken","abstract":"An invalidation token that can be used to cancel callbacks registered to a Promise
.
"},"Structs/TokenPromise.html":{"name":"TokenPromise","abstract":"A Promise
adapter that automatically applies a PromiseInvalidationToken
.
"},"Functions.html#/s:12Tomorrowland4when9fulfilled3qos15cancelOnFailureAA7PromiseVySayxGq_GSayAGyxq_GG_8Dispatch0I3QoSV0J6SClassOSbtr0_lF":{"name":"when(fulfilled:qos:cancelOnFailure:)","abstract":"Waits on an array of Promise
s and returns a Promise
that is fulfilled with an array of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled_____3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_q2_q3_tq4_GAGyxq4_G_AGyq_q4_GAGyq0_q4_GAGyq1_q4_GAGyq2_q4_GAGyq3_q4_G8Dispatch0I3QoSV0J6SClassOSbtr5_lF":{"name":"when(fulfilled:_:_:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled____3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_q2_tq3_GAGyxq3_G_AGyq_q3_GAGyq0_q3_GAGyq1_q3_GAGyq2_q3_G8Dispatch0I3QoSV0J6SClassOSbtr4_lF":{"name":"when(fulfilled:_:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled___3qos15cancelOnFailureAA7PromiseVyx_q_q0_q1_tq2_GAGyxq2_G_AGyq_q2_GAGyq0_q2_GAGyq1_q2_G8Dispatch0I3QoSV0J6SClassOSbtr3_lF":{"name":"when(fulfilled:_:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled__3qos15cancelOnFailureAA7PromiseVyx_q_q0_tq1_GAGyxq1_G_AGyq_q1_GAGyq0_q1_G8Dispatch0I3QoSV0J6SClassOSbtr2_lF":{"name":"when(fulfilled:_:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when9fulfilled_3qos15cancelOnFailureAA7PromiseVyx_q_tq0_GAGyxq0_G_AGyq_q0_G8Dispatch0I3QoSV0J6SClassOSbtr1_lF":{"name":"when(fulfilled:_:qos:cancelOnFailure:)","abstract":"
Waits on a tuple of Promise
s and returns a Promise
that is fulfilled with a tuple of the"},"Functions.html#/s:12Tomorrowland4when5first15cancelRemainingAA7PromiseVyxq_GSayAGG_Sbtr0_lF":{"name":"when(first:cancelRemaining:)","abstract":"
Returns a Promise
that is resolved with the result of the first resolved input Promise
.
"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorO8timedOutyACyxGAEmlF":{"name":"timedOut","abstract":"The promise did not resolve within the given interval.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorO8rejectedyACyxGxcAEmlF":{"name":"rejected(_:)","abstract":"The promise was rejected with an error.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:10Foundation13CustomNSErrorP13errorUserInfoSDySSypGvp":{"name":"errorUserInfo","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorOAASQRzlE2eeoiySbACyxG_AEtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:12Tomorrowland19PromiseTimeoutErrorOAASQRzlE2neoiySbACyxG_AEtFZ":{"name":"!=(_:_:)","abstract":"Returns a Boolean value indicating whether two values are not equal.
","parent_name":"PromiseTimeoutError"},"Enums/PromiseTimeoutError.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseTimeoutError"},"Enums/NoError.html#/s:12Tomorrowland7NoErrorO2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"NoError"},"Enums/NoError.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"NoError"},"Enums/NoError.html#/s:Se4fromxs7Decoder_p_tKcfc":{"name":"init(from:)","parent_name":"NoError"},"Enums/NoError.html#/s:SE6encode2toys7Encoder_p_tKF":{"name":"encode(to:)","parent_name":"NoError"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5valueyACyxq_GxcAEmr0_lF":{"name":"value(_:)","abstract":"The value the promise was fulfilled with.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5erroryACyxq_Gq_cAEmr0_lF":{"name":"error(_:)","abstract":"The error the promise was rejected with.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO9cancelledyACyxq_GAEmr0_lF":{"name":"cancelled","abstract":"The promise was cancelled.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5valuexSgvp":{"name":"value","abstract":"Returns the contained value if the result is .value
, otherwise nil
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO5errorq_Sgvp":{"name":"error","abstract":"Returns the contained error if the result is .error
, otherwise nil
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO11isCancelledSbvp":{"name":"isCancelled","abstract":"Returns true
if the result is .cancelled
, otherwise false
.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO3mapyACyqd__q_Gqd__xKXEKlF":{"name":"map(_:)","abstract":"Maps a successful result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO8mapErroryACyxqd__Gqd__q_KXEKlF":{"name":"mapError(_:)","abstract":"Maps a rejected result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO7flatMapyACyqd__q_GAExKXEKlF":{"name":"flatMap(_:)","abstract":"Maps a successful result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultO12flatMapErroryACyxqd__GAEq_KXEKlF":{"name":"flatMapError(_:)","abstract":"Maps a rejected result through a block and returns the new result.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAASQRzSQR_rlE2eeoiySbACyxq_G_AEtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAASQRzSQR_rlE2neoiySbACyxq_G_AEtFZ":{"name":"!=(_:_:)","abstract":"Returns a Boolean value indicating whether two values are not equal.
","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:SH4hash4intoys6HasherVz_tF":{"name":"hash(into:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:SE6encode2toys7Encoder_p_tKF":{"name":"encode(to:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:Se4fromxs7Decoder_p_tKcfc":{"name":"init(from:)","parent_name":"PromiseResult"},"Enums/PromiseResult.html#/s:12Tomorrowland13PromiseResultOAAs5ErrorR_rlEyACyxq_Gs0C0Oyxq_Gcfc":{"name":"init(_:)","abstract":"Returns a PromiseResult
from a Result
.
","parent_name":"PromiseResult"},"Enums/PromiseCallbackError.html#/c:@M@Tomorrowland@E@TWLPromiseCallbackError@TWLPromiseCallbackErrorAPIMismatch":{"name":"apiMismatch","abstract":"The callback did not conform to the expected API.
","parent_name":"PromiseCallbackError"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO4mainyA2CmF":{"name":"main","abstract":"Execute on the main queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO10backgroundyA2CmF":{"name":"background","abstract":"Execute on a dispatch queue with the .background
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO7utilityyA2CmF":{"name":"utility","abstract":"Execute on a dispatch queue with the .utility
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO7defaultyA2CmF":{"name":"default","abstract":"Execute on a dispatch queue with the .default
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO13userInitiatedyA2CmF":{"name":"userInitiated","abstract":"Execute on a dispatch queue with the .userInitiated
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO15userInteractiveyA2CmF":{"name":"userInteractive","abstract":"Execute on a dispatch queue with the .userInteractive
QoS.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO5queueyACSo012OS_dispatch_D0CcACmF":{"name":"queue(_:)","abstract":"Execute on the specified dispatch queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO14operationQueueyACSo011NSOperationE0CcACmF":{"name":"operationQueue(_:)","abstract":"Execute on the specified operation queue.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO9immediateyA2CmF":{"name":"immediate","abstract":"Execute synchronously.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO4autoACvpZ":{"name":"auto","abstract":"Returns .main
when accessed from the main thread, otherwise .default
.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO3qosAC8Dispatch0E3QoSV0F6SClassO_tcfc":{"name":"init(qos:)","abstract":"Returns the PromiseContext
that corresponds to a given Dispatch QoS class.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html#/s:12Tomorrowland14PromiseContextO2eeoiySbAC_ACtFZ":{"name":"==(_:_:)","abstract":"Returns a Boolean value indicating whether two values are equal.
","parent_name":"PromiseContext"},"Enums/PromiseContext.html":{"name":"PromiseContext","abstract":"The context in which a Promise body or callback is evaluated.
"},"Enums/PromiseCallbackError.html":{"name":"PromiseCallbackError","abstract":"An error potentially returned from Promise.Resolver.handleCallback(isCancelError:)
.
"},"Enums/PromiseResult.html":{"name":"PromiseResult","abstract":"The result of a resolved promise.
"},"Enums/NoError.html":{"name":"NoError","abstract":"NoError
is a type that cannot be constructed.
"},"Enums/PromiseTimeoutError.html":{"name":"PromiseTimeoutError","abstract":"The error type returned from Promise.timeout
.
"},"Enums.html":{"name":"Enumerations","abstract":"The following enumerations are available globally.
"},"Functions.html":{"name":"Functions","abstract":"The following functions are available globally.
"},"Structs.html":{"name":"Structures","abstract":"The following structures are available globally.
"},"Typealiases.html":{"name":"Type Aliases","abstract":"The following type aliases are available globally.
"}}
\ No newline at end of file