blob: 544f5ed908cefbfc9acd56185f41517bc073136b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
import System.Environment.Blank
main = do
let envVar = "AN_ENVIRONMENT_VARIABLE"
valueBeforeSettingVariable <- getEnv envVar
print valueBeforeSettingVariable -- Nothing
valueWithDefaultBeforeSetting <- getEnvDefault envVar "DEFAULT"
print valueWithDefaultBeforeSetting -- "DEFAULT"
setEnv envVar "" False
valueAfterSettingVariable <- getEnv envVar
print valueAfterSettingVariable -- Just ""
valueWithDefaultAfterSetting <- getEnvDefault envVar "DEFAULT"
print valueWithDefaultAfterSetting -- ""
valueFromGetEnvironment <- lookup envVar <$> getEnvironment
print valueFromGetEnvironment -- Just ""
setEnv envVar "NO_OVERRIDE" False
valueAfterSettingWithExistingValueAndOverrideFalse <- getEnv envVar
print valueAfterSettingWithExistingValueAndOverrideFalse -- Just ""
setEnv envVar "OVERRIDE" True
valueAfterSettingWithExistingValueAndOverrideTrue <- getEnv envVar
print valueAfterSettingWithExistingValueAndOverrideTrue -- Just "OVERRIDE"
unsetEnv envVar
valueAfterUnsettingVariable <- getEnv envVar
print valueAfterUnsettingVariable -- Nothing
|