From d335eb0efdeefceb52954e94b529296cce0c8028 Mon Sep 17 00:00:00 2001 From: Adrian Cochrane Date: Thu, 3 Nov 2022 19:32:13 +1300 Subject: [PATCH] Expose & fix treeFind/treeFlattenAll utilities. --- stylist-traits/src/Stylist/Tree.hs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/stylist-traits/src/Stylist/Tree.hs b/stylist-traits/src/Stylist/Tree.hs index 4294594..c1351f7 100644 --- a/stylist-traits/src/Stylist/Tree.hs +++ b/stylist-traits/src/Stylist/Tree.hs @@ -2,7 +2,7 @@ -- Mostly used by callers including (soon) XML Conduit Stylist, -- but also used internally for generating counter text. module Stylist.Tree(StyleTree(..), treeOrder, treeOrder', - Path, treeMap, treeFlatten, preorder, preorder', postorder) where + Path, treeMap, treeFind, treeFlatten, treeFlattenAll, preorder, preorder', postorder) where data StyleTree p = StyleTree { style :: p, @@ -36,10 +36,10 @@ treeFlatten' (StyleTree _ childs:sibs) = treeFlatten' childs ++ treeFlatten' sib treeFlatten' [] = [] treeFlattenAll :: StyleTree p -> [p] -treeFlattenAll = treeFlatten' . children +treeFlattenAll = treeFlattenAll' . children treeFlattenAll' :: [StyleTree p] -> [p] -treeFlattenAll' (StyleTree p []:ps) = p : treeFlatten' ps -treeFlattenAll' (StyleTree p childs:sibs) = p : treeFlatten' childs ++ treeFlatten' sibs +treeFlattenAll' (StyleTree p []:ps) = p : treeFlattenAll' ps +treeFlattenAll' (StyleTree p childs:sibs) = p : treeFlattenAll' childs ++ treeFlattenAll' sibs treeFlattenAll' [] = [] treeFind :: StyleTree p -> (p -> Bool) -> [p] -- 2.30.2