crow/col/stack.crow (source)
stack[t] record
(has non-public fields)
Immutable stack type.
Iteration functions move from the bottom to the top.
new[t] t stack(...a t array)
Stack containing the given elements.
The first element of a goes on the bottom and the last element of a goes on the top.
to[t] t stack(a t array)
Stack containing the given elements.
The first element of a goes on the bottom and the last element of a goes on the top.
to[t] t array(a t stack)
is-empty[t] bool(a t stack)
true iff a.size == 0.
~[t] t stack(a t stack, b t)
Appends an element to the stack.
This is O(1).
size[t] nat64(a t stack)
Number of elements in the stack.
This is O(1).
peek[t] t?(a t stack)
Top element.
Returns an empty option iff a is empty.
This is O(1).
pop[t] (t stack, t) tuple2?(a t stack)
Returns the top element of the a stacknd a new stack with all elements but the top.
Returns an empty option iff a is empty.
iterate[t] bool(a t stack, f mut bool(t))
stack-iterator[t] record
(has non-public fields)