Promise
(in ./Carbon/Promise.lua)
Implements a model for asynchronous tasks via promises.
A type of Promise<T>
is a Promise that returns the given type, T
.
Methods
class public Promise:New()
Returns Promise
class public Promise:PlacementNew(Promise? out
)
Returns Promise
object public Promise:Init()
Returns void
Creates or initializes a Promise.
object public Promise:Catch([function fail]
)
Returns self
- optional
fail
: The function to call if this promise fails.
Syntactical sugar for promise:Then(nil, fail)
.
object public Promise:Reject(...
)
Returns void
- required
...
: A list of parameters to be passed as the result.
Rejects the promise, passing along a set of results.
Counts the promise as a failure.
object public Promise:Resolve(...
)
Returns void
- required
...
: A list of parameters to be passed as the result.
Resolves the promise, passing along a set of results.
Counts the promise as a success.
object public Promise:Then([function success, function fail]
)
Returns self
- optional
success
: The function to call if this promise succeeds. - optional
fail
: The function to call if this promise fails.
Registers an action to occur after this promise resolves.
object public Promise:All(...
)
Returns Promise
- required
...
: A list of promises to wait for.
Returns a promise that resolves when all of the given promises resolve.
object public Promise:Any(...
)
Returns Promise
- required
...
: A list of promises to wait for.
Returns a promise that resolves when any one of the given promises resolves.
object public Promise<T>:Await()
Returns T
Yields until the promise has a result to give.
Can only be called from an asynchronous method.
Properties
[none]