Standard library
Queue
FIFO queue over a list.
Introduction
FIFO queue over a list. Import std/collections/queue to bind the module as queue. Call free functions as queue.name(...). Struct methods use a receiver value.
/ std/collections/queue
This page is the package reference for std/collections/queue. Private helpers used only by co-located tests are not listed.
Struct · queue
FIFO queue shape used with queue.make and queue methods. The shape is exported as queue.queue. Methods on the receiver are listed next.
/ std/collections/queue
; shape: queue.queue
$ q = queue.make()
Parameters: No parameters. Type or shape export. Returns: Shape export used for literals and methods.
queue · len
Returns how many items are waiting in the queue. Call form: queue.len().
/ std/collections/queue
$ q = queue.make()
$ n = q.len()
Parameters: No parameters. Returns: Integer length.
queue · is_empty
Reports whether the queue has no waiting items. Call form: queue.is_empty().
/ std/collections/queue
$ q = queue.make()
$ empty = q.is_empty()
Parameters: No parameters. Returns: Boolean.
queue · push
Appends x at the back of the queue and returns the queue for chaining. Call form: queue.push(x).
/ std/collections/queue
$ q = queue.make()
q.push(1)
Parameters: x: value to enqueue. Returns: The queue receiver.
queue · pop
Removes and returns the front value. An empty queue fails with a result err. Call form: queue.pop().
/ std/collections/queue
$ q = queue.make()
q.push(1)
| q.pop() {
$ v { }
! e { }
}Parameters: No parameters. Returns: Result. Ok arm: front value. Err arm: "empty".
Functions
Free functions on queue. Each function has a short description, an example, then parameters and return shape.
make
Creates an empty queue. Call form: queue.make().
/ std/collections/queue
$ q = queue.make()
Parameters: No parameters. Returns: Empty queue value.