Safe Haskell | None |
---|---|
Language | Haskell2010 |
Development.GitRev.Utils.Environment
Description
Provides utilities for querying environment variables.
Since: 0.1
Synopsis
- newtype LookupEnvError = MkLookupEnvError String
- envValQ :: String -> Q (Either LookupEnvError String)
- runInEnvDirQ :: String -> Q a -> Q (Either LookupEnvError a)
- withEnvValQ :: String -> (String -> Q a) -> Q (Either LookupEnvError a)
Documentation
newtype LookupEnvError Source #
Environment variable lookup failure. The value is the variable we attempted to look up.
Since: 0.1
Constructors
MkLookupEnvError String |
Instances
Exception LookupEnvError Source # | Since: 0.1 |
Defined in Development.GitRev.Utils.Environment Methods toException :: LookupEnvError -> SomeException # fromException :: SomeException -> Maybe LookupEnvError # displayException :: LookupEnvError -> String # backtraceDesired :: LookupEnvError -> Bool # | |
Show LookupEnvError Source # | Since: 0.1 |
Defined in Development.GitRev.Utils.Environment Methods showsPrec :: Int -> LookupEnvError -> ShowS # show :: LookupEnvError -> String # showList :: [LookupEnvError] -> ShowS # | |
Eq LookupEnvError Source # | Since: 0.1 |
Defined in Development.GitRev.Utils.Environment Methods (==) :: LookupEnvError -> LookupEnvError -> Bool # (/=) :: LookupEnvError -> LookupEnvError -> Bool # | |
Lift LookupEnvError Source # | Since: 0.1 |
Defined in Development.GitRev.Utils.Environment Methods lift :: Quote m => LookupEnvError -> m Exp # liftTyped :: forall (m :: Type -> Type). Quote m => LookupEnvError -> Code m LookupEnvError # |
Arguments
:: String | The environment variable |
-> Q (Either LookupEnvError String) | The result |
Performs an environment variable lookup in Q
.
Examples
>>>
setEnv "SOME_VAR" "val"
>>>
$$(qToCode $ envValQ "SOME_VAR")
Right "val"
Since: 0.1
Arguments
:: String | The environment variable |
-> Q a | The |
-> Q (Either LookupEnvError a) | The result of running |
Runs the given Q
-action under the directory d
pointed to by the
given environment variable.
Examples
>>>
import System.Directory (listDirectory)
>>>
setEnv "SOME_DIR" "./src"
>>>
$$(qToCode $ runInEnvDirQ "SOME_DIR" $ runIO (listDirectory "./"))
Right ["Development"]
Since: 0.1
Arguments
:: String | The environment variable |
-> (String -> Q a) | Function to run on |
-> Q (Either LookupEnvError a) |
Runs a Q
-action on the result of an environment variable, if it exists.
Examples
>>>
import System.Directory (listDirectory)
>>>
setEnv "SOME_DIR" "./src"
>>>
$$(qToCode $ withEnvValQ "SOME_DIR" (runIO . listDirectory))
Right ["Development"]
Since: 0.1