| Safe Haskell | Safe-Inferred |
|---|---|
| Language | Haskell2010 |
OptEnvConf.Setting
Synopsis
- data Setting a = Setting {
- settingDasheds :: ![Dashed]
- settingReaders :: ![Reader a]
- settingTryArgument :: !Bool
- settingSwitchValue :: !(Maybe a)
- settingTryOption :: !Bool
- settingEnvVars :: !(Maybe (NonEmpty String))
- settingConfigVals :: !(Maybe (NonEmpty (ConfigValSetting a)))
- settingDefaultValue :: !(Maybe (a, String))
- settingExamples :: ![String]
- settingHidden :: !Bool
- settingMetavar :: !(Maybe Metavar)
- settingHelp :: !(Maybe String)
- data ConfigValSetting a = forall void.ConfigValSetting {
- configValSettingPath :: !(NonEmpty String)
- configValSettingCodec :: !(ValueCodec void (Maybe a))
- help :: String -> Builder a
- metavar :: String -> Builder a
- argument :: Builder a
- option :: Builder a
- switch :: a -> Builder a
- reader :: Reader a -> Builder a
- str :: IsString s => Reader s
- auto :: Read a => Reader a
- long :: String -> Builder a
- short :: Char -> Builder a
- env :: String -> Builder a
- conf :: HasCodec a => String -> Builder a
- confWith :: String -> ValueCodec void a -> Builder a
- confWith' :: String -> ValueCodec void (Maybe a) -> Builder a
- name :: HasCodec a => String -> Builder a
- value :: Show a => a -> Builder a
- valueWithShown :: (a -> String) -> a -> Builder a
- example :: String -> Builder a
- shownExample :: Show a => a -> Builder a
- hidden :: Builder a
- newtype Builder a = Builder {
- unBuilder :: [BuildInstruction a]
- data BuildInstruction a
- = BuildAddHelp !String
- | BuildSetMetavar !String
- | BuildTryArgument
- | BuildTryOption
- | BuildSetSwitchValue !a
- | BuildAddReader !(Reader a)
- | BuildAddLong !(NonEmpty Char)
- | BuildAddShort !Char
- | BuildAddEnv !String
- | BuildAddConf !(ConfigValSetting a)
- | BuildSetDefault !a !String
- | BuildAddExample !String
- | BuildSetHidden
- showSettingABit :: Setting a -> ShowS
- newtype SettingHash = SettingHash Int
- hashSetting :: Setting a -> SettingHash
- completeBuilder :: Builder a -> Setting a
- mapMaybeBuilder :: (BuildInstruction a -> Maybe (BuildInstruction b)) -> Builder a -> Builder b
- emptySetting :: Setting a
- type Metavar = String
- type Help = String
- prefixConfigValSetting :: String -> ConfigValSetting a -> ConfigValSetting a
- suffixConfigValSettingKey :: String -> ConfigValSetting a -> ConfigValSetting a
Documentation
A setting for parsing and documenting a single value.
Constructors
| Setting | |
Fields
| |
data ConfigValSetting a Source #
Constructors
| forall void. ConfigValSetting | |
Fields
| |
Builders
reader :: Reader a -> Builder a Source #
Declare how to parse an argument, option, or environment variable.
conf :: HasCodec a => String -> Builder a Source #
Try to parse a configuration value at the given key.
Multiple confs will be tried in order.
confWith' :: String -> ValueCodec void (Maybe a) -> Builder a Source #
Like confWith but allows interpreting Null as a value other than "Not found".
value :: Show a => a -> Builder a Source #
Set the default value
Multiple values override eachother.
API Note: default is not a valid identifier in Haskell.
I'd also have preferred default instead.
valueWithShown :: (a -> String) -> a -> Builder a Source #
Set the default value, along with version of it shown by a custom function.
example :: String -> Builder a Source #
Provide an example value for documentation.
The example is provided as a literal string.
If you use reader auto, you'll want to use shownExample instead.
shownExample :: Show a => a -> Builder a Source #
Builder for a Setting
Constructors
| Builder | |
Fields
| |
data BuildInstruction a Source #
Constructors
Internal
newtype SettingHash Source #
Constructors
| SettingHash Int |
Instances
| Show SettingHash Source # | |
Defined in OptEnvConf.Setting Methods showsPrec :: Int -> SettingHash -> ShowS # show :: SettingHash -> String # showList :: [SettingHash] -> ShowS # | |
| Eq SettingHash Source # | |
Defined in OptEnvConf.Setting | |
| Ord SettingHash Source # | |
Defined in OptEnvConf.Setting Methods compare :: SettingHash -> SettingHash -> Ordering # (<) :: SettingHash -> SettingHash -> Bool # (<=) :: SettingHash -> SettingHash -> Bool # (>) :: SettingHash -> SettingHash -> Bool # (>=) :: SettingHash -> SettingHash -> Bool # max :: SettingHash -> SettingHash -> SettingHash # min :: SettingHash -> SettingHash -> SettingHash # | |
hashSetting :: Setting a -> SettingHash Source #
mapMaybeBuilder :: (BuildInstruction a -> Maybe (BuildInstruction b)) -> Builder a -> Builder b Source #
prefixConfigValSetting :: String -> ConfigValSetting a -> ConfigValSetting a Source #
suffixConfigValSettingKey :: String -> ConfigValSetting a -> ConfigValSetting a Source #