aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library/lux/data/collection/queue/priority.lux
diff options
context:
space:
mode:
Diffstat (limited to 'stdlib/source/library/lux/data/collection/queue/priority.lux')
-rw-r--r--stdlib/source/library/lux/data/collection/queue/priority.lux24
1 files changed, 13 insertions, 11 deletions
diff --git a/stdlib/source/library/lux/data/collection/queue/priority.lux b/stdlib/source/library/lux/data/collection/queue/priority.lux
index 698bb57ac..763f1836d 100644
--- a/stdlib/source/library/lux/data/collection/queue/priority.lux
+++ b/stdlib/source/library/lux/data/collection/queue/priority.lux
@@ -15,14 +15,14 @@
[type (#+ :by_example)
[abstract (#+ abstract: :abstraction :representation)]]]])
-(type: #export Priority
+(type: .public Priority
Nat)
-(def: #export max
+(def: .public max
Priority
n\top)
-(def: #export min
+(def: .public min
Priority
n\bottom)
@@ -36,21 +36,23 @@
@))
-(abstract: #export (Queue a)
+(abstract: .public (Queue a)
+ {}
+
(Maybe (Tree :@: Priority a))
- (def: #export empty
+ (def: .public empty
Queue
(:abstraction #.None))
- (def: #export (peek queue)
+ (def: .public (peek queue)
(All [a] (-> (Queue a) (Maybe a)))
(do maybe.monad
[tree (:representation queue)]
(tree.one (n.= (tree.tag tree))
tree)))
- (def: #export (size queue)
+ (def: .public (size queue)
(All [a] (-> (Queue a) Nat))
(case (:representation queue)
#.None
@@ -65,7 +67,7 @@
(0 #1 [left right])
(n.+ (recur left) (recur right))))))
- (def: #export (member? equivalence queue member)
+ (def: .public (member? equivalence queue member)
(All [a] (-> (Equivalence a) (Queue a) a Bit))
(case (:representation queue)
#.None
@@ -81,7 +83,7 @@
(or (recur left)
(recur right))))))
- (def: #export (pop queue)
+ (def: .public (pop queue)
(All [a] (-> (Queue a) (Queue a)))
(:abstraction
(do maybe.monad
@@ -109,7 +111,7 @@
(#.Some =right)
(#.Some (\ ..builder branch left =right)))))))))
- (def: #export (push priority value queue)
+ (def: .public (push priority value queue)
(All [a] (-> Priority a (Queue a) (Queue a)))
(let [addition (\ ..builder leaf priority value)]
(:abstraction
@@ -121,6 +123,6 @@
(#.Some (\ ..builder branch tree addition))))))
)
-(def: #export empty?
+(def: .public empty?
(All [a] (-> (Queue a) Bit))
(|>> ..size (n.= 0)))