summaryrefslogtreecommitdiff
path: root/js/promise_util.ts
diff options
context:
space:
mode:
Diffstat (limited to 'js/promise_util.ts')
-rw-r--r--js/promise_util.ts50
1 files changed, 0 insertions, 50 deletions
diff --git a/js/promise_util.ts b/js/promise_util.ts
deleted file mode 100644
index 3c789124d..000000000
--- a/js/promise_util.ts
+++ /dev/null
@@ -1,50 +0,0 @@
-// Copyright 2018 the Deno authors. All rights reserved. MIT license.
-import { PromiseRejectEvent } from "./libdeno";
-
-/* tslint:disable-next-line:no-any */
-const rejectMap = new Map<Promise<any>, string>();
-// For uncaught promise rejection errors
-
-/* tslint:disable-next-line:no-any */
-const otherErrorMap = new Map<Promise<any>, string>();
-// For reject after resolve / resolve after resolve errors
-
-export function promiseRejectHandler(
- error: Error | string,
- event: PromiseRejectEvent,
- /* tslint:disable-next-line:no-any */
- promise: Promise<any>
-) {
- switch (event) {
- case "RejectWithNoHandler":
- rejectMap.set(promise, (error as Error).stack || "RejectWithNoHandler");
- break;
- case "HandlerAddedAfterReject":
- rejectMap.delete(promise);
- break;
- case "ResolveAfterResolved":
- // Should not warn. See #1272
- break;
- default:
- // error is string here
- otherErrorMap.set(promise, `Promise warning: ${error as string}`);
- }
-}
-
-// Return true when continue, false to die on uncaught promise reject
-export function promiseErrorExaminer(): boolean {
- if (otherErrorMap.size > 0) {
- for (const msg of otherErrorMap.values()) {
- console.log(msg);
- }
- otherErrorMap.clear();
- }
- if (rejectMap.size > 0) {
- for (const msg of rejectMap.values()) {
- console.log(msg);
- }
- rejectMap.clear();
- return false;
- }
- return true;
-}