lux/data/struct/queue
Types
Queue
(type: (Queue a)
{#front (lux;List a)
#rear (lux;List a)})
Structs
(Eq<Queue> Eq<a>)
(All [a] (-> (lux/control/eq;Eq a) (lux/control/eq;Eq (Queue a))))
Values
empty
Queue
empty?
(All [a] (-> (Queue a) lux;Bool))
(from-list entries)
(All [a] (-> (lux;List a) (Queue a)))
(member? a/Eq queue member)
(All [a] (-> (lux/control/eq;Eq a) (Queue a) a lux;Bool))
peek
(All [a] (-> (Queue a) (lux;Maybe a)))
(pop queue)
(All [a] (-> (Queue a) (Queue a)))
(push val queue)
(All [a] (-> a (Queue a) (Queue a)))
(size queue)
(All [a] (-> (Queue a) lux;Nat))
(to-list queue)
(All [a] (-> (Queue a) (lux;List a)))