diff options
Diffstat (limited to 'Utility/Directory.hs')
-rw-r--r-- | Utility/Directory.hs | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/Utility/Directory.hs b/Utility/Directory.hs index e7b7c442b..40e65d634 100644 --- a/Utility/Directory.hs +++ b/Utility/Directory.hs @@ -13,11 +13,22 @@ import System.Directory import Control.Exception (throw) import Control.Monad import Control.Monad.IfElse +import System.FilePath +import Control.Applicative import Utility.SafeCommand import Utility.TempFile import Utility.Exception +{- Lists the contents of a directory. + - Unlike getDirectoryContents, paths are not relative to the directory. -} +dirContents :: FilePath -> IO [FilePath] +dirContents d = map (d </>) . filter notcruft <$> getDirectoryContents d + where + notcruft "." = False + notcruft ".." = False + notcruft _ = True + {- Moves one filename to another. - First tries a rename, but falls back to moving across devices if needed. -} moveFile :: FilePath -> FilePath -> IO () |