diff options
author | Joey Hess <joey@kitenet.net> | 2013-09-04 18:08:47 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2013-09-04 18:08:47 -0400 |
commit | 02b51c10f48e9205d2a18d58430143be6f3ae78e (patch) | |
tree | b8dbdc4a79a300d8aa451a04831e238ead45e753 /Utility | |
parent | f77547a335232d85af462764ce90531815b1fea3 (diff) | |
parent | 5fb17c2c28288ae2a663d2ce5ec32ff627d608b5 (diff) |
Merge branch 'master' into encryption
Diffstat (limited to 'Utility')
-rw-r--r-- | Utility/Misc.hs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/Utility/Misc.hs b/Utility/Misc.hs index 804a9e487..48ce4c929 100644 --- a/Utility/Misc.hs +++ b/Utility/Misc.hs @@ -91,6 +91,12 @@ massReplace vs = go [] vs go (replacement:acc) vs (drop (length val) s) | otherwise = go acc rest s +{- First item in the list that is not Nothing. -} +firstJust :: Eq a => [Maybe a] -> Maybe a +firstJust ms = case dropWhile (== Nothing) ms of + [] -> Nothing + (md:_) -> md + {- Given two orderings, returns the second if the first is EQ and returns - the first otherwise. - |