queue

Generated by tinox doc

Two fixed-capacity/ordered container types: CircularBuffer<T>, a bounded FIFO buffer that rejects pushes once full, and PriorityQueue<T>, which keeps items ordered by an explicit Int64 priority (lower first) on every enqueue.

Circular buffer

import tinox.core.queue;

class Main
{
    fnc main() -> Int32
    {
        let buf: CircularBuffer<Int64> = CircularBuffer<Int64>::new(3);
        CircularBuffer::push(buf, 1);
        println("empty? " + CircularBuffer::isEmpty(buf).toString());
        println("popped: " + CircularBuffer::pop(buf).toString());
        return 0;
    }
}

Priority queue

import tinox.core.queue;

class Main
{
    fnc main() -> Int32
    {
        let pq: PriorityQueue<String> = PriorityQueue<String>::new();
        PriorityQueue::enqueue(pq, "urgent", 1);
        println("next: " + PriorityQueue::peek(pq));
        return 0;
    }
}