packages feed

equal-files 0.0.5.1 → 0.0.5.2

raw patch · 2 files changed

+9/−12 lines, 2 files

Files

equal-files.cabal view
@@ -1,5 +1,5 @@ Name:           equal-files-Version:        0.0.5.1+Version:        0.0.5.2 License:        GPL License-File:   LICENSE Author:         Henning Thielemann <haskell@henning-thielemann.de>@@ -44,7 +44,7 @@ Build-Type:     Simple  Source-Repository this-  Tag:         0.0.5.1+  Tag:         0.0.5.2   Type:        darcs   Location:    http://code.haskell.org/~thielema/equal-files/ 
src/EqualFiles.hs view
@@ -3,8 +3,8 @@ import qualified Data.ByteString      as B import qualified Data.ByteString.Lazy as BL -import System.IO (openBinaryFile, hClose, IOMode(ReadMode), )-import Control.Exception (bracket, evaluate, )+import System.IO (IOMode(ReadMode), withBinaryFile, openBinaryFile, hClose, )+import Control.Exception (evaluate, )  import Data.List (sort, ) import Data.List.HT (groupBy, )@@ -12,13 +12,13 @@   groupEqualElems :: (Ord key, Ord elem) => [(elem, key)] -> [[key]]-groupEqualElems xs =-   map (map snd) (groupBy (equating fst) (sort xs))+groupEqualElems =+   map (map snd) . groupBy (equating fst) . sort  {- | Only return sub-lists with more than one element. -} clusterEqualElems :: (Ord key, Ord elem) => [(elem, key)] -> [[key]]-clusterEqualElems xs =-   filter (not . null . tail) (groupEqualElems xs)+clusterEqualElems =+   filter (not . null . tail) . groupEqualElems  {- | This version does not close the files,@@ -48,10 +48,7 @@  readPrefix :: Int -> FilePath -> IO B.ByteString readPrefix size fileName =-   bracket-      (openBinaryFile fileName ReadMode)-      hClose-      (flip B.hGet size)+   withBinaryFile fileName ReadMode $ flip B.hGet size  clusterWithPreSort :: Int -> [FilePath] -> IO [[FilePath]] clusterWithPreSort size fileNames =