FilePather 0.1.0 → 0.1.1
raw patch · 4 files changed
+47/−1 lines, 4 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ System.FilePath.FilePather.FileType: isDirectoryType :: FileType -> Bool
+ System.FilePath.FilePather.FileType: isFileType :: FileType -> Bool
+ System.FilePath.FilePather.FileType: isUnknownType :: FileType -> Bool
+ System.FilePath.FilePather.FilterPredicate: filterPredicate' :: (FilePath -> Bool) -> FilterPredicate
+ System.FilePath.FilePather.FilterPredicate: filterPredicateT' :: (FilePath -> f Bool) -> FilterPredicateT f
+ System.FilePath.FilePather.RecursePredicate: toFilterPredicate :: RecursePredicateT f -> FilterPredicateT f
Files
- FilePather.cabal +1/−1
- src/System/FilePath/FilePather/FileType.hs +21/−0
- src/System/FilePath/FilePather/FilterPredicate.hs +16/−0
- src/System/FilePath/FilePather/RecursePredicate.hs +9/−0
FilePather.cabal view
@@ -1,5 +1,5 @@ Name: FilePather-Version: 0.1.0+Version: 0.1.1 Author: Tony Morris <ʇǝu˙sıɹɹoɯʇ@ןןǝʞsɐɥ> Maintainer: Tony Morris <ʇǝu˙sıɹɹoɯʇ@ןןǝʞsɐɥ> Copyright: Tony Morris
src/System/FilePath/FilePather/FileType.hs view
@@ -1,6 +1,9 @@ module System.FilePath.FilePather.FileType ( FileType(..)+, isFileType+, isDirectoryType+, isUnknownType ) where -- | The possible types of a file. data FileType =@@ -8,4 +11,22 @@ | Directory -- ^ The type is a directory. | Unknown -- ^ The type is unknown. deriving (Eq, Show, Enum)++isFileType ::+ FileType+ -> Bool+isFileType =+ (==) File++isDirectoryType ::+ FileType+ -> Bool+isDirectoryType =+ (==) Directory++isUnknownType ::+ FileType+ -> Bool+isUnknownType =+ (==) Unknown
src/System/FilePath/FilePather/FilterPredicate.hs view
@@ -4,6 +4,8 @@ , FilterPredicate , filterPredicateT , filterPredicate+, filterPredicateT'+, filterPredicate' , runFilterPredicateT , runFilterPredicate ) where@@ -31,6 +33,20 @@ -> FilterPredicate filterPredicate f = filterPredicateT (\z -> Identity . f z)++-- | A filter predicate takes a 'FilePath' and returns whether or not to filter the value.+filterPredicateT' ::+ (FilePath -> f Bool)+ -> FilterPredicateT f+filterPredicateT' f =+ filterPredicateT (const . f)++-- | Construct a filter predicate that does not require effects to compute its result.+filterPredicate' ::+ (FilePath -> Bool)+ -> FilterPredicate+filterPredicate' f =+ filterPredicate (const . f) -- | Extract the filter predicate function. runFilterPredicateT ::
src/System/FilePath/FilePather/RecursePredicate.hs view
@@ -6,9 +6,11 @@ , recursePredicate , runRecursePredicateT , runRecursePredicate+, toFilterPredicate ) where import Control.Monad.Identity+import System.FilePath.FilePather.FilterPredicate -- | A recurse predicate takes a 'FilePath' and returns whether or not to continue recursing on that file. newtype RecursePredicateT f =@@ -47,4 +49,11 @@ -> Bool runRecursePredicate p = runIdentity . runRecursePredicateT p++-- | Convert the recurse predicate to a filter predicate.+toFilterPredicate ::+ RecursePredicateT f+ -> FilterPredicateT f+toFilterPredicate (RecursePredicateT f) =+ filterPredicateT (const . f)