diff options
author | Egor Tensin <Egor.Tensin@gmail.com> | 2017-06-11 03:05:02 +0300 |
---|---|---|
committer | Egor Tensin <Egor.Tensin@gmail.com> | 2017-06-11 03:05:02 +0300 |
commit | f5f056d79087f4ee3038643d02a82c1ad574553f (patch) | |
tree | 7d0313a1cddfe7be70378844d9b6bc487982c65d /app/ListPaths.hs | |
parent | code style (diff) | |
download | windows-env-f5f056d79087f4ee3038643d02a82c1ad574553f.tar.gz windows-env-f5f056d79087f4ee3038643d02a82c1ad574553f.zip |
refactoring
The fact whether the registry value was a regular or an expandable
string is now propagated up to the `Environment` module (and even
further to the apps).
This was done to get rid of these weird `setString*` functions (and the
like).
I don't feel like I've came up with the right abstractions yet though,
so there's more work on this to come.
Diffstat (limited to '')
-rw-r--r-- | app/ListPaths.hs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/app/ListPaths.hs b/app/ListPaths.hs index 4193ad6..8a31cb8 100644 --- a/app/ListPaths.hs +++ b/app/ListPaths.hs @@ -22,7 +22,7 @@ import qualified WindowsEnv data WhichPaths = All | ExistingOnly | MissingOnly deriving (Eq, Show) -shouldListPath :: WhichPaths -> WindowsEnv.VarValue -> IO Bool +shouldListPath :: WhichPaths -> String -> IO Bool shouldListPath All = return . const True shouldListPath ExistingOnly = doesDirectoryExist shouldListPath MissingOnly = fmap not . doesDirectoryExist @@ -72,7 +72,7 @@ listPaths options = runExceptT doListPaths >>= either ioError return query = queryFrom $ optSource options queryFrom Environment = lift $ fromMaybe "" <$> lookupEnv varName - queryFrom (Registry profile) = WindowsEnv.query profile varName + queryFrom (Registry profile) = show <$> WindowsEnv.query profile varName filterPaths = filterM (shouldListPath whichPaths . WindowsEnv.pathExpanded) |