| Portability | non-portable (requires POSIX) |
|---|---|
| Stability | provisional |
| Maintainer | libraries@haskell.org |
| Safe Haskell | Trustworthy |
System.Posix.Env.ByteString
Description
POSIX environment support
- getEnv :: ByteString -> IO (Maybe ByteString)
- getEnvDefault :: ByteString -> ByteString -> IO ByteString
- getEnvironmentPrim :: IO [ByteString]
- getEnvironment :: IO [(ByteString, ByteString)]
- putEnv :: ByteString -> IO ()
- setEnv :: ByteString -> ByteString -> Bool -> IO ()
- unsetEnv :: ByteString -> IO ()
- getArgs :: IO [ByteString]
Environment Variables
getEnv :: ByteString -> IO (Maybe ByteString)
getEnv looks up a variable in the environment.
getEnvDefault :: ByteString -> ByteString -> IO ByteString
getEnvDefault is a wrapper around getEnv where the
programmer can specify a fallback if the variable is not found
in the environment.
getEnvironment :: IO [(ByteString, ByteString)]
getEnvironment retrieves the entire environment as a
list of (key,value) pairs.
putEnv :: ByteString -> IO ()
putEnv function takes an argument of the form name=value
and is equivalent to setEnv(key,value,True{-overwrite-}).
setEnv :: ByteString -> ByteString -> Bool -> IO ()
The setEnv function inserts or resets the environment variable name in
the current environment list. If the variable name does not exist in the
list, it is inserted with the given value. If the variable does exist,
the argument overwrite is tested; if overwrite is False, the variable is
not reset, otherwise it is reset to the given value.
unsetEnv :: ByteString -> IO ()
The unsetEnv function deletes all instances of the variable name
from the environment.
Program arguments
getArgs :: IO [ByteString]
Computation getArgs returns a list of the program's command
line arguments (not including the program name), as ByteStrings.
Unlike getArgs, this function does no Unicode
decoding of the arguments; you get the exact bytes that were passed
to the program by the OS. To interpret the arguments as text, some
Unicode decoding should be applied.