The item currently being synthesized, or null.
Number of items waiting in the queue (excludes current).
A shallow copy of the queued items.
A shallow copy of the pending items (alias for items).
Remove all pending items from the queue.
Does not affect the currently-running item.
The number of items removed.
Mark the currently-running synthesis as complete.
Remove and return the next item from the queue.
The next QueueItem, or undefined if the queue is empty.
Add a path to the synthesis queue.
Meta path to synthesize.
If true, insert at front of queue.
Position and whether the path was already queued.
Get the 0-indexed position of a path in the queue.
Meta path to look up.
Position index, or null if not found in the queue.
Return a snapshot of queue state for the /status endpoint.
Queue depth and item list.
Check whether a path is in the queue or currently being synthesized.
Meta path to look up.
True if the path is queued or currently running.
Set a callback to invoke when a new (non-duplicate) item is enqueued.
Process queued items one at a time until the queue is empty.
Re-entry is prevented: if already processing, the call returns immediately. Errors are logged and do not block subsequent items.
Async function that performs synthesis for a path.
Single-threaded synthesis queue.
Only one synthesis runs at a time. Priority items are inserted at the front of the queue. Duplicate paths are rejected with their current position returned.