cosmetic change.
This commit is contained in:
parent
fde88dedd1
commit
82e7c6862f
28
CabalDev.hs
28
CabalDev.hs
@ -1,7 +1,9 @@
|
||||
{-# LANGUAGE DoAndIfThenElse #-}
|
||||
|
||||
module CabalDev (modifyOptions) where
|
||||
|
||||
{-
|
||||
If the directory 'cabal-dev/packages-X.X.X.conf' exists, add it to the
|
||||
If the directory 'cabal-dev/packages-X.X.X.conf' exists, add it to the
|
||||
options ghc-mod uses to check the source. Otherwise just pass it on.
|
||||
-}
|
||||
|
||||
@ -17,9 +19,9 @@ modifyOptions :: Options -> IO Options
|
||||
modifyOptions opts =
|
||||
fmap (has_cdev opts) findCabalDev
|
||||
where
|
||||
has_cdev :: Options -> Maybe String -> Options
|
||||
has_cdev op Nothing = op
|
||||
has_cdev op (Just path) = addPath op path
|
||||
has_cdev :: Options -> Maybe String -> Options
|
||||
has_cdev op Nothing = op
|
||||
has_cdev op (Just path) = addPath op path
|
||||
|
||||
findCabalDev :: IO (Maybe String)
|
||||
findCabalDev =
|
||||
@ -28,18 +30,16 @@ findCabalDev =
|
||||
addPath :: Options -> String -> Options
|
||||
addPath orig_opts path = do
|
||||
let orig_paths = packageConfs orig_opts
|
||||
orig_opts {
|
||||
packageConfs = orig_paths ++ [path] }
|
||||
orig_opts { packageConfs = orig_paths ++ [path] }
|
||||
|
||||
searchIt :: [FilePath] -> IO (Maybe FilePath)
|
||||
searchIt [] = return Nothing
|
||||
searchIt path = do
|
||||
a <- doesDirectoryExist (mpath path)
|
||||
case a of
|
||||
False -> return Nothing
|
||||
True -> do
|
||||
b <- find always (fileName ~~? "packages*.conf") $ mpath path
|
||||
maybe (searchIt $ init path) (return . Just) $ listToMaybe b
|
||||
where
|
||||
mpath a = (joinPath a) ++ "cabal-dev/"
|
||||
|
||||
if a then do
|
||||
b <- find always (fileName ~~? "packages*.conf") $ mpath path
|
||||
maybe (searchIt $ init path) (return . Just) $ listToMaybe b
|
||||
else
|
||||
return Nothing
|
||||
where
|
||||
mpath a = joinPath a ++ "cabal-dev/"
|
||||
|
Loading…
Reference in New Issue
Block a user