| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Effectful.Environment
Synopsis
- data Environment (a :: Type -> Type) b
- runEnvironment :: forall (es :: [Effect]) a. (HasCallStack, IOE :> es) => Eff (Environment ': es) a -> Eff es a
- getArgs :: forall (es :: [Effect]). Environment :> es => Eff es [String]
- getProgName :: forall (es :: [Effect]). Environment :> es => Eff es String
- getExecutablePath :: forall (es :: [Effect]). Environment :> es => Eff es FilePath
- getEnv :: forall (es :: [Effect]). Environment :> es => String -> Eff es String
- getEnvironment :: forall (es :: [Effect]). Environment :> es => Eff es [(String, String)]
- lookupEnv :: forall (es :: [Effect]). Environment :> es => String -> Eff es (Maybe String)
- setEnv :: forall (es :: [Effect]). Environment :> es => String -> String -> Eff es ()
- unsetEnv :: forall (es :: [Effect]). Environment :> es => String -> Eff es ()
- withArgs :: forall (es :: [Effect]) a. Environment :> es => [String] -> Eff es a -> Eff es a
- withProgName :: forall (es :: [Effect]) a. Environment :> es => String -> Eff es a -> Eff es a
Effect
data Environment (a :: Type -> Type) b Source #
An effect for querying and modifying the system environment.
Instances
| type DispatchOf Environment Source # | |
Defined in Effectful.Environment | |
| data StaticRep Environment Source # | |
Defined in Effectful.Environment | |
Handlers
runEnvironment :: forall (es :: [Effect]) a. (HasCallStack, IOE :> es) => Eff (Environment ': es) a -> Eff es a Source #
Run the Environment effect.
Querying the environment
getProgName :: forall (es :: [Effect]). Environment :> es => Eff es String Source #
Lifted getProgName.
getExecutablePath :: forall (es :: [Effect]). Environment :> es => Eff es FilePath Source #
Lifted getExecutablePath.
getEnv :: forall (es :: [Effect]). Environment :> es => String -> Eff es String Source #
Lifted getEnv.
getEnvironment :: forall (es :: [Effect]). Environment :> es => Eff es [(String, String)] Source #
Lifted getEnvironment.
lookupEnv :: forall (es :: [Effect]). Environment :> es => String -> Eff es (Maybe String) Source #
Lifted lookupEnv.
Modifying the environment
setEnv :: forall (es :: [Effect]). Environment :> es => String -> String -> Eff es () Source #
Lifted setEnv.
unsetEnv :: forall (es :: [Effect]). Environment :> es => String -> Eff es () Source #
Lifted unsetEnv.
withArgs :: forall (es :: [Effect]) a. Environment :> es => [String] -> Eff es a -> Eff es a Source #
Lifted withArgs.
withProgName :: forall (es :: [Effect]) a. Environment :> es => String -> Eff es a -> Eff es a Source #
Lifted withProgName.