diff options
| author | Ryan Dahl <ry@tinyclouds.org> | 2019-02-19 12:38:19 -0500 |
|---|---|---|
| committer | Ryan Dahl <ry@tinyclouds.org> | 2019-02-19 13:18:41 -0500 |
| commit | d63a2e02246c0eb2ee6258b8fc32bbd0f9378567 (patch) | |
| tree | 81b4019b47cc645887d738664578d2b2ff1facd3 /util/deferred.ts | |
| parent | a5a48ce84d255c8af57feb4b6a7f7ef607d16ee0 (diff) | |
Revert "Redesign of http server module (denoland/deno_std#188)"
We need to consider the API changes here more carefully.
This reverts commit da188a7d30cbf71317b46015ee63a06437c09aeb.
and commit 8569f15207bdc12c2c8ca81e9d020955be54918b.
Original: https://github.com/denoland/deno_std/commit/57c9176b19bf4f4580466e088c249cbe9b145119
Diffstat (limited to 'util/deferred.ts')
| -rw-r--r-- | util/deferred.ts | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/util/deferred.ts b/util/deferred.ts deleted file mode 100644 index f52087547..000000000 --- a/util/deferred.ts +++ /dev/null @@ -1,42 +0,0 @@ -// Copyright 2018-2019 the Deno authors. All rights reserved. MIT license. - -export type Deferred<T = any, R = Error> = { - promise: Promise<T>; - resolve: (t?: T) => void; - reject: (r?: R) => void; - readonly handled: boolean; -}; - -/** Create deferred promise that can be resolved and rejected by outside */ -export function defer<T>(): Deferred<T> { - let handled = false; - let resolve; - let reject; - const promise = new Promise<T>((res, rej) => { - resolve = r => { - handled = true; - res(r); - }; - reject = r => { - handled = true; - rej(r); - }; - }); - return { - promise, - resolve, - reject, - get handled() { - return handled; - } - }; -} - -export function isDeferred(x): x is Deferred { - return ( - typeof x === "object" && - x.promise instanceof Promise && - typeof x["resolve"] === "function" && - typeof x["reject"] === "function" - ); -} |
