NoneThe callback given to S returns a WalkStatus which determines which subsequent directories are traversed.&Continue recursing all subdirectories.Do not traverse deeper.Stop recursing entirely._Called with a directory, list of relative subdirectories, and a list of file names. If using /, the callback always returns '()'. If using Y, it returns whether to continue, prevent recursing further, or stop traversal entirely. recursively enumerates the given root directory, calling callback once per directory with the traversed directory name, a list of subdirectories, and a list of files.IThe subdirectories and file names are always relative to the root given. pathWalk "src" $ \dir subdirs files -> do forM_ files $ \file -> do when ("Test.hs" `isSuffixOf` file) $ do registerTestFile $ dir </> file &Traverses a directory tree, just like O, except that the callback can determine whether to continue traversal. See .The lazy version of . Instead of running a callback per directory, it returns a lazy list that reads from the filesystem as the list is evaluated.d does not allow selective recursion. For richer functionality, see the directory-tree package at 2https://hackage.haskell.org/package/directory-tree       pathw_F6TIy2dUaOCJgzk9HYRjEESystem.Directory.PathWalk WalkStatusContinue StopRecursingStopCallbackpathWalkpathWalkInterruptible pathWalkLazyreadDirsAndFilespathWalkInternal