diff options
author | Joey Hess <joey@kitenet.net> | 2014-03-29 14:43:34 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2014-03-29 14:43:34 -0400 |
commit | 9d7ce6bff0c9dcf66983eb100927fc7776c447f9 (patch) | |
tree | b3cf2fe44d25b092b16f08ba3680bf5719dc3a6c /Types | |
parent | bce30628d5e6df5b64c482bc5fe161576efaaa79 (diff) |
reorg matcher types; no non-type code changes
Diffstat (limited to 'Types')
-rw-r--r-- | Types/FileMatcher.hs | 21 | ||||
-rw-r--r-- | Types/Limit.hs | 20 |
2 files changed, 21 insertions, 20 deletions
diff --git a/Types/FileMatcher.hs b/Types/FileMatcher.hs index e2d4eadc1..03a86a38c 100644 --- a/Types/FileMatcher.hs +++ b/Types/FileMatcher.hs @@ -7,7 +7,12 @@ module Types.FileMatcher where +import Types.UUID (UUID) import Types.Key (Key) +import Utility.Matcher (Matcher, Token) + +import qualified Data.Map as M +import qualified Data.Set as S data MatchInfo = MatchingFile FileInfo @@ -17,3 +22,19 @@ data FileInfo = FileInfo { relFile :: FilePath -- may be relative to cwd , matchFile :: FilePath -- filepath to match on; may be relative to top } + +type FileMatcherMap a = M.Map UUID (Utility.Matcher.Matcher (S.Set UUID -> MatchInfo -> a Bool)) + +type MkLimit a = String -> Either String (MatchFiles a) + +type AssumeNotPresent = S.Set UUID + +type MatchFiles a = AssumeNotPresent -> MatchInfo -> a Bool + +type FileMatcher a = Matcher (MatchFiles a) + +-- This is a matcher that can have tokens added to it while it's being +-- built, and once complete is compiled to an unchangable matcher. +data ExpandableMatcher a + = BuildingMatcher [Token (MatchInfo -> a Bool)] + | CompleteMatcher (Matcher (MatchInfo -> a Bool)) diff --git a/Types/Limit.hs b/Types/Limit.hs deleted file mode 100644 index 2b009a758..000000000 --- a/Types/Limit.hs +++ /dev/null @@ -1,20 +0,0 @@ -{- types for limits - - - - Copyright 2013 Joey Hess <joey@kitenet.net> - - - - Licensed under the GNU GPL version 3 or higher. - -} - -{-# LANGUAGE CPP #-} - -module Types.Limit where - -import Common.Annex -import Types.FileMatcher - -import qualified Data.Set as S - -type MkLimit = String -> Either String MatchFiles - -type AssumeNotPresent = S.Set UUID -type MatchFiles = AssumeNotPresent -> MatchInfo -> Annex Bool |