keen/col/deque

Source
deque[t] record (has private fields)
Immutable double-ended queue.
list-new[t] t deque(a t[])
to[t] t deque(a t[])
to[t] t[](a t deque)
is-empty[t] bool(a t deque)
true iff a.size == 0. This is O(1).
size[t] nat64(a t deque)
Number of elements in the deque. This is O(n).
to[t] json(a t deque) (json, t) to
==[t] bool(a t deque, b t deque) t equal
~[t] t deque(a t deque, value t)
Adds a new element on the right.
~[t] t deque(value t, a t deque)
Adds a new element on the left.
pop-left[t] (t, t deque) option(a t deque)
Remove a value from the left. Returns an empty option if a is empty.
pop-right[t] (t deque, t) option(a t deque)
Remove a value from the right. Returns an empty option if a is empty.
some[t] bool(a t deque, f bool mut(t))