diff options
author | Joey Hess <joeyh@joeyh.name> | 2016-02-27 10:55:02 -0400 |
---|---|---|
committer | Joey Hess <joeyh@joeyh.name> | 2016-02-27 10:55:02 -0400 |
commit | 00361f2bf9da7bb8244445eae2bcee5487c809d1 (patch) | |
tree | 5236ede82937a35ae4e2ff94cbc1aa0619c420f6 /Types | |
parent | f684572aef9d12cf0881ce6cfc053a87579182a3 (diff) |
Support --metadata field<number, --metadata field>number etc to match ranges of numeric values.
Similarly (well, for free), support preferred content expressions like
metadata=field<number and metadata=field>number
Diffstat (limited to 'Types')
-rw-r--r-- | Types/MetaData.hs | 22 |
1 files changed, 0 insertions, 22 deletions
diff --git a/Types/MetaData.hs b/Types/MetaData.hs index cf2811b22..976f37e46 100644 --- a/Types/MetaData.hs +++ b/Types/MetaData.hs @@ -36,8 +36,6 @@ module Types.MetaData ( metaDataValues, ModMeta(..), modMeta, - parseModMeta, - parseMetaData, prop_metadata_sane, prop_metadata_serialize ) where @@ -239,26 +237,6 @@ modMeta m (MaybeSetMeta f v) | S.null (currentMetaDataValues f m) = updateMetaData f v emptyMetaData | otherwise = emptyMetaData -{- Parses field=value, field+=value, field-=value, field?=value -} -parseModMeta :: String -> Either String ModMeta -parseModMeta p = case lastMaybe f of - Just '+' -> AddMeta <$> mkMetaField f' <*> v - Just '-' -> DelMeta <$> mkMetaField f' <*> v - Just '?' -> MaybeSetMeta <$> mkMetaField f' <*> v - _ -> SetMeta <$> mkMetaField f <*> v - where - (f, sv) = separate (== '=') p - f' = beginning f - v = pure (toMetaValue sv) - -{- Parses field=value -} -parseMetaData :: String -> Either String (MetaField, MetaValue) -parseMetaData p = (,) - <$> mkMetaField f - <*> pure (toMetaValue v) - where - (f, v) = separate (== '=') p - {- Avoid putting too many fields in the map; extremely large maps make - the seriaization test slow due to the sheer amount of data. - It's unlikely that more than 100 fields of metadata will be used. -} |