diff options
Diffstat (limited to '')
-rw-r--r-- | stdlib/source/library/lux/data/collection/tree/zipper.lux | 88 |
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] |