aboutsummaryrefslogtreecommitdiff
path: root/stdlib/source/library/lux/data/collection/tree/zipper.lux
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--stdlib/source/library/lux/data/collection/tree/zipper.lux88
1 files changed, 44 insertions, 44 deletions
diff --git a/stdlib/source/library/lux/data/collection/tree/zipper.lux b/stdlib/source/library/lux/data/collection/tree/zipper.lux
index ee7daa341..313a61909 100644
--- a/stdlib/source/library/lux/data/collection/tree/zipper.lux
+++ b/stdlib/source/library/lux/data/collection/tree/zipper.lux
@@ -92,11 +92,11 @@
#.End
#.None
- (#.Item head tail)
- (#.Some [#family (#.Some [#parent (with@ [#node #//.children] (list) zipper)
+ {#.Item head tail}
+ {#.Some [#family {#.Some [#parent (with@ [#node #//.children] (list) zipper)
#lefts #.End
- #rights tail])
- #node head])))
+ #rights tail]}
+ #node head]}))
(def: .public (up zipper)
(All (_ a) (-> (Zipper a) (Maybe (Zipper a))))
@@ -107,33 +107,33 @@
(revised@ #node (: (-> (Tree (:parameter 0))
(Tree (:parameter 0)))
(with@ #//.children (list\composite (list.reversed lefts)
- (#.Item (value@ #node zipper)
- rights))))
+ {#.Item (value@ #node zipper)
+ rights})))
parent)]
(with@ [#node #//.children]
(list\composite (list.reversed lefts)
- (#.Item (value@ #node zipper)
- rights))
+ {#.Item (value@ #node zipper)
+ rights})
parent))))))
(template [<one> <all> <side> <op_side>]
[(def: .public (<one> zipper)
(All (_ a) (-> (Zipper a) (Maybe (Zipper a))))
(case (value@ #family zipper)
- (#.Some family)
+ {#.Some family}
(case (value@ <side> family)
- (#.Item next side')
- (#.Some (for [@.old
- [#family (#.Some (|> family
+ {#.Item next side'}
+ {#.Some (for [@.old
+ [#family {#.Some (|> family
(with@ <side> side')
- (revised@ <op_side> (|>> (#.Item (value@ #node zipper))))))
+ (revised@ <op_side> (|>> {#.Item (value@ #node zipper)})))}
#node next]]
(let [move (: (All (_ a) (-> (List (Tree a)) (Zipper a) (Family Zipper a) (Family Zipper a)))
(function (_ side' zipper)
(|>> (with@ <side> side')
- (revised@ <op_side> (|>> (#.Item (value@ #node zipper)))))))]
- [#family (#.Some (move side' zipper family))
- #node next])))
+ (revised@ <op_side> (|>> {#.Item (value@ #node zipper)})))))]
+ [#family {#.Some (move side' zipper family)}
+ #node next]))}
#.End
#.None)
@@ -147,24 +147,24 @@
#.None
#.None
- (#.Some family)
+ {#.Some family}
(case (list.reversed (value@ <side> family))
#.End
#.None
- (#.Item last prevs)
- (#.Some (for [@.old [#family (#.Some (|> family
+ {#.Item last prevs}
+ {#.Some (for [@.old [#family {#.Some (|> family
(with@ <side> #.End)
- (revised@ <op_side> (|>> (#.Item (value@ #node zipper))
- (list\composite prevs)))))
+ (revised@ <op_side> (|>> {#.Item (value@ #node zipper)}
+ (list\composite prevs))))}
#node last]]
(let [move (: (All (_ a) (-> (List (Tree a)) (Zipper a) (Family Zipper a) (Family Zipper a)))
(function (_ prevs zipper)
(|>> (with@ <side> #.End)
- (revised@ <op_side> (|>> (#.Item (value@ #node zipper))
+ (revised@ <op_side> (|>> {#.Item (value@ #node zipper)}
(list\composite prevs))))))]
- [#family (#.Some (move prevs zipper family))
- #node last]))))))]
+ [#family {#.Some (move prevs zipper family)}
+ #node last]))})))]
[right rightmost #rights #lefts]
[left leftmost #lefts #rights]
@@ -173,14 +173,14 @@
(def: .public (next zipper)
(All (_ a) (-> (Zipper a) (Maybe (Zipper a))))
(case (..down zipper)
- (#.Some forward)
- (#.Some forward)
+ {#.Some forward}
+ {#.Some forward}
#.None
(loop [@ zipper]
(case (..right @)
- (#.Some forward)
- (#.Some forward)
+ {#.Some forward}
+ {#.Some forward}
#.None
(do maybe.monad
@@ -190,12 +190,12 @@
(def: (bottom zipper)
(All (_ a) (-> (Zipper a) (Zipper a)))
(case (..right zipper)
- (#.Some forward)
+ {#.Some forward}
(bottom forward)
#.None
(case (..down zipper)
- (#.Some forward)
+ {#.Some forward}
(bottom forward)
#.None
@@ -207,13 +207,13 @@
#.None
(..up zipper)
- (#.Some backward)
- (#.Some (case (..down backward)
- (#.Some then)
+ {#.Some backward}
+ {#.Some (case (..down backward)
+ {#.Some then}
(..bottom then)
#.None
- backward))))
+ backward)}))
(template [<name> <move>]
[(def: .public (<name> zipper)
@@ -222,13 +222,13 @@
#.None
#.None
- (#.Some @)
+ {#.Some @}
(loop [@ @]
(case (<move> @)
#.None
- (#.Some @)
+ {#.Some @}
- (#.Some @)
+ {#.Some @}
(recur @)))))]
[end ..next]
@@ -241,7 +241,7 @@
#.None
true
- (#.Some _)
+ {#.Some _}
false))
(def: .public (interpose value zipper)
@@ -253,7 +253,7 @@
(def: .public (adopt value zipper)
(All (_ a) (-> a (Zipper a) (Zipper a)))
(revised@ [#node #//.children]
- (|>> (#.Item (//.leaf value)))
+ (|>> {#.Item (//.leaf value)})
zipper))
(def: .public (remove zipper)
@@ -266,7 +266,7 @@
(value@ #rights family)
(value@ #parent family)))
- (#.Item next side)
+ {#.Item next side}
(in (|> zipper
(with@ #family (|> family
(with@ #lefts side)
@@ -280,10 +280,10 @@
#.None
#.None
- (#.Some family)
- (#.Some (with@ #family
- (#.Some (revised@ <side> (|>> (#.Item (//.leaf value))) family))
- zipper))))]
+ {#.Some family}
+ {#.Some (with@ #family
+ {#.Some (revised@ <side> (|>> {#.Item (//.leaf value)}) family)}
+ zipper)}))]
[insert_left #lefts]
[insert_right #rights]