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)))