diff options
author | tv <tv@krebsco.de> | 2025-03-13 22:29:30 +0100 |
---|---|---|
committer | tv <tv@krebsco.de> | 2025-07-21 14:57:09 +0200 |
commit | 7ded95389727f6e2899078faea2103b01091caf0 (patch) | |
tree | fa0c95f2b8e167496cf392240a718714feb46623 | |
parent | 15b6cb2e94243cd8f6c9912a78ee1a5e9738b264 (diff) |
add chunksOf
-rw-r--r-- | src/Blessings.hs | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/Blessings.hs b/src/Blessings.hs index 59fc4c8..e8dfa82 100644 --- a/src/Blessings.hs +++ b/src/Blessings.hs @@ -416,3 +416,13 @@ instance (Eq a, Blessable a) => Blessable (Blessings a) where (t:ts) -> normalize $ t <> i <> Bless.intercalate i ts fromWord8 = Plain . Bless.fromWord8 + + +chunksOf :: (Eq a, Blessable a) => Int -> a -> [a] +chunksOf k = rec + where + rec t = + case Bless.splitAt k t of + (tl, tr) + | tl == mempty -> [] + | otherwise -> tl : rec tr |