Skip to content
Snippets Groups Projects
Commit 037d86e0 authored by Joey Hess's avatar Joey Hess
Browse files

refactor

parent ba382544
Branches
Tags
No related merge requests found
......@@ -18,8 +18,7 @@ import Types.Difference
import Logs.UUIDBased
parseDifferencesLog :: String -> (M.Map UUID Differences)
parseDifferencesLog = simpleMap
. parseLog (Just . maybe UnknownDifferences Differences . readish)
parseDifferencesLog = simpleMap . parseLog (Just . readDifferences)
-- The sum of all recorded differences, across all UUIDs.
allDifferences :: M.Map UUID Differences -> Differences
......
......@@ -8,12 +8,14 @@
module Types.Difference (
Difference(..),
Differences(..),
readDifferences,
getDifferences,
differenceConfigKey,
differenceConfigVal,
hasDifference,
) where
import Utility.PartialPrelude
import qualified Git
import qualified Git.Config
......@@ -55,9 +57,13 @@ instance Monoid Differences where
mappend (Differences l1) (Differences l2) = Differences (canon (l1 ++ l2))
mappend _ _ = UnknownDifferences
-- Canonical form, allowing comparison.
canon :: [Difference] -> [Difference]
canon = nub . sort
readDifferences :: String -> Differences
readDifferences = maybe UnknownDifferences Differences . readish
getDifferences :: Git.Repo -> Differences
getDifferences r = Differences $ catMaybes $
map getmaybe [minBound .. maxBound]
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment