aboutsummaryrefslogtreecommitdiff
path: root/node_modules/jest-worker/build/PriorityQueue.d.ts
diff options
context:
space:
mode:
authorJoel Kronqvist <work.joelkronqvist@pm.me>2022-03-11 20:46:06 +0200
committerJoel Kronqvist <work.joelkronqvist@pm.me>2022-03-11 20:46:06 +0200
commit080c5819d87b933816d724a83f3bf4f1686770a7 (patch)
tree4a2ccc68b27edf7d4cbc586c932cc7542b655e19 /node_modules/jest-worker/build/PriorityQueue.d.ts
parent5ac7049a9d30733165cc212dee308163c2a14644 (diff)
parentd003b82235a9329f912522a2f70aa950dfce4998 (diff)
downloadLYLLRuoka-080c5819d87b933816d724a83f3bf4f1686770a7.tar.gz
LYLLRuoka-080c5819d87b933816d724a83f3bf4f1686770a7.zip
Merge branch 'master' of https://github.com/JoelHMikael/FoodJS
Updating remote changes
Diffstat (limited to 'node_modules/jest-worker/build/PriorityQueue.d.ts')
-rw-r--r--node_modules/jest-worker/build/PriorityQueue.d.ts41
1 files changed, 41 insertions, 0 deletions
diff --git a/node_modules/jest-worker/build/PriorityQueue.d.ts b/node_modules/jest-worker/build/PriorityQueue.d.ts
new file mode 100644
index 0000000..d6bcf4c
--- /dev/null
+++ b/node_modules/jest-worker/build/PriorityQueue.d.ts
@@ -0,0 +1,41 @@
+/**
+ * Copyright (c) Facebook, Inc. and its affiliates. All Rights Reserved.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+import type { QueueChildMessage, TaskQueue } from './types';
+export declare type ComputeTaskPriorityCallback = (method: string, ...args: Array<unknown>) => number;
+declare type QueueItem = {
+ task: QueueChildMessage;
+ priority: number;
+};
+/**
+ * Priority queue that processes tasks in natural ordering (lower priority first)
+ * accoridng to the priority computed by the function passed in the constructor.
+ *
+ * FIFO ordering isn't guaranteed for tasks with the same priority.
+ *
+ * Worker specific tasks with the same priority as a non-worker specific task
+ * are always processed first.
+ */
+export default class PriorityQueue implements TaskQueue {
+ private _computePriority;
+ private _queue;
+ private _sharedQueue;
+ constructor(_computePriority: ComputeTaskPriorityCallback);
+ enqueue(task: QueueChildMessage, workerId?: number): void;
+ _enqueue(task: QueueChildMessage, queue: MinHeap<QueueItem>): void;
+ dequeue(workerId: number): QueueChildMessage | null;
+ _getWorkerQueue(workerId: number): MinHeap<QueueItem>;
+}
+declare type HeapItem = {
+ priority: number;
+};
+declare class MinHeap<TItem extends HeapItem> {
+ private _heap;
+ peek(): TItem | null;
+ add(item: TItem): void;
+ poll(): TItem | null;
+}
+export {};