promesa.protocols
A generic promise abstraction and related protocols.
IAwaitable
protocol
members
-await!
(-await! it)
(-await! it duration)
block current thread await termination
IBuffer
protocol
members
-full?
(-full? it)
-offer!
(-offer! it val)
-poll!
(-poll! it)
-size
(-size it)
ICancellable
protocol
A cancellation abstraction.
members
-cancel!
(-cancel! it)
-cancelled?
(-cancelled? it)
ICompletable
protocol
members
-reject!
(-reject! it e)
Deliver an error to empty promise.
-resolve!
(-resolve! it v)
Deliver a value to empty promise.
IExecutor
protocol
members
-exec!
(-exec! it task)
Submit a task and return nil
-run!
(-run! it task)
Submit a task and return a promise.
-submit!
(-submit! it task)
Submit a task and return a promise.
IHandler
protocol
members
-active?
(-active? it)
-blockable?
(-blockable? it)
-commit!
(-commit! it)
ILock
protocol
An experimental lock protocol, used internally; no public api
members
-lock!
(-lock! it)
-unlock!
(-unlock! it)
IPromise
protocol
members
-fmap
(-fmap it f)
(-fmap it f executor)
Apply function to a computation
-fnly
(-fnly it f)
(-fnly it f executor)
Apply function to a computation independently if is failed or successful; the return value is ignored.
-hmap
(-hmap it f)
(-hmap it f executor)
Apply function to a computation independently if is failed or successful.
-mcat
(-mcat it f)
(-mcat it f executor)
Apply function to a computation and flatten 1 level
-merr
(-merr it f)
(-merr it f executor)
Apply function to a failed computation and flatten 1 level
-then
(-then it f)
(-then it f executor)
Apply function to a computation and flatten multiple levels
IPromiseFactory
protocol
A promise constructor abstraction.
members
-promise
(-promise it)
Create a promise instance from other types
IScheduler
protocol
A generic abstraction for scheduler facilities.
members
-schedule!
(-schedule! it ms func)
Schedule a function to be executed in future.
ISemaphore
protocol
An experimental semaphore protocol, used internally; no public api
members
-acquire!
(-acquire! it)
(-acquire! it n)
Acquire 1 or N permits
-release!
(-release! it)
(-release! it n)
Release 1 or N permits
-try-acquire!
(-try-acquire! it)
(-try-acquire! it n)
(-try-acquire! it n t)
Try acquire n or n permits, non-blocking or optional timeout
IState
protocol
Additional state/introspection abstraction.
members
-extract
(-extract it)
(-extract it default)
Extract the current value.
-pending?
(-pending? it)
Retutns true if a promise is pending.
-rejected?
(-rejected? it)
Returns true if a promise is rejected.
-resolved?
(-resolved? it)
Returns true if a promise is resolved.