Deferred<T>
10/22/22Less than 1 minute
Deferred<T>
lang.Deferred
A small deferred helper: expose resolve / reject without writing new Promise((resolve, reject) => …).
Example
"nodejs";
const { Deferred } = require("lang");
async function main() {
console.log(await add(1, 2));
}
main();
function add(a, b) {
const d = new Deferred();
setTimeout(() => {
d.resolve(a + b);
}, 1000);
return d.promise();
}Type parameters
| Name |
|---|
T |
Table of contents
Constructors
Accessors
Methods
Constructors
constructor
• new Deferred<T>(keepRunning?)
Type parameters
| Name |
|---|
T |
Parameters
| Name | Type | Default |
|---|---|---|
keepRunning | boolean | true |
Accessors
value
• get value(): undefined | T
The settled fulfilled value, or undefined while still pending or after rejection.
Returns
undefined | T
Methods
promise
▸ promise(): Promise<T>
Returns
Promise<T>
reject
▸ reject(reason?): boolean
Reject the underlying promise with reason. Returns false if the deferred was already settled.
Parameters
| Name | Type |
|---|---|
reason? | any |
Returns
boolean
resolve
▸ resolve(value): boolean
Fulfill the underlying promise with value. Returns false if the deferred was already settled.
Parameters
| Name | Type |
|---|---|
value | T |
Returns
boolean
