on master help sign in
Add eitherReaderPaths unfold to Dir module
commit78d93490566508e233d89140b745c5fb02fdc1a5 authorHarendra Kumar <harendra@composewell.com> dateSat 31 Dec 2022, 11:43 (4 years ago) parent2427715
1 file changed+6
core/src/Streamly/Internal/FileSystem/Dir.hs+6
core/src/Streamly/Internal/FileSystem/Dir.hs+6
@@ -48,6 +48,7 @@ module Streamly.Internal.FileSystem.Dir
4848 , fileReader
4949 , dirReader
5050 , eitherReader
51+ , eitherReaderPaths
5152
5253 {-
5354 , toStreamWithBufferOf
@@ -261,6 +262,11 @@ eitherReader =
261262 r <- liftIO $ Dir.doesDirectoryExist (dir ++ "/" ++ x)
262263 return $ if r then Left x else Right x
263264
265+{-# INLINE eitherReaderPaths #-}
266+eitherReaderPaths :: MonadIO m => Unfold m FilePath (Either FilePath FilePath)
267+eitherReaderPaths =
268+ UF.mapM2 (\dir -> return . bimap (dir </>) (dir </>)) eitherReader
269+
264270--
265271-- | Read files only.
266272--