envy-0.3.0.1: An environmentally friendly way to deal with environment variables

Copyright(c) David Johnson 2015
Maintainerdjohnson.m@ngmail.com
Stabilityexperimental
PortabilityPOSIX
Safe HaskellNone
LanguageHaskell2010

System.Envy

Contents

Description

 

Synopsis

Classes

class FromEnv a where Source

FromEnv Typeclass

Methods

fromEnv :: Parser a Source

class Show a => ToEnv a where Source

ToEnv Typeclass

Methods

toEnv :: a -> EnvList a Source

class (Read a, Show a) => Var a where Source

Class for converting to / from an environment variable

Methods

toVar :: a -> String Source

fromVar :: String -> Maybe a Source

data EnvList a Source

EnvList type w/ phanton

Instances

Functions

decodeEnv :: FromEnv a => IO (Either String a) Source

Environment retrieval with failure info

decode :: FromEnv a => IO (Maybe a) Source

Environment retrieval (with no failure info)

showEnv :: IO () Source

Env helper

setEnvironment :: EnvList a -> IO (Either String ()) Source

Set environment via a ToEnv constrained type

setEnvironment' :: ToEnv a => a -> IO (Either String ()) Source

Set environment directly using a value of class ToEnv

unsetEnvironment :: EnvList a -> IO (Either String ()) Source

Unset Environment from a ToEnv constrained type

makeEnv :: ToEnv a => [EnvVar] -> EnvList a Source

smart constructor, Environment creation helper

env :: forall a. (Typeable a, Var a) => String -> Parser a Source

Environment variable getter

envMaybe :: forall a. (Typeable a, Var a) => String -> Parser (Maybe a) Source

Maybe parser

(.=) :: Var a => String -> a -> EnvVar Source

Infix environment variable setter this is a smart constructor for producing types of EnvVar

(.!=) :: forall a. (Typeable a, Var a) => Parser (Maybe a) -> a -> Parser a Source

For use with (.:?) for providing default arguments