úÎ!4ø1î"      !None=?X ÂsalakMonad to Load PropertiessalakConvert  to Haskell value.salak Return of salak+A Property Container to hold all propertiessalak0A Property value represented as a Haskell value.salakNumeric PropertysalakString Property salakBool Property salak Property key salak The empty  salakSplit origin key by " to sub keys: M"salak.config.name" -> ["salak","config","name"] "" -> [] "a..b" -> ["a","b"] salakInsert simple  into  by  E. If the key already have values then the new property will discard.salakFind . by key and convert to specific Haskell value.#salakInsert batch properties to salakLoad PropertiessalakGet current PropertiessalakSet value to current properties$%&  '( )*#+,-None¯salakFind . by key and convert to specific Haskell value.salakZGet property or use default value if not found, but will throw exception if parse failed.salak"Use default value if Key not foundsalakFind a by key and convert to specific Haskell value. Throw error if property not found or parse failed5555None|.salakLoad  from  Environmentsalak Load Properties from CommandLine./Noneesalak@CommandLine parser. Parse command line into property key values.salak,Default command line parsers. Use format:  --KEY=VALUE For example: F--salak.config.name=test.yml => ("salak.config.name", PStr "test.yml")0salakLoad  from  CommandLinesalak Load Properties from CommandLine01None=?Xø2salakLoad  from JSON 3salakLoad Properties from JSON Value245None'6salakLoad  from Yaml file.salakLoad Properties from Yamlsalak#Load Properties from Yaml if exists6(c) 2018 Daniel YUBSD3Daniel YU <leptonyu@gmail.com> experimentalportableNone0ÚsalakYaml file name.salak#Initialize default properties from  CommandLine and  Environment.  CommandLine use default parser.salak#Initialize default properties from  CommandLine and  Environment. salak#Initialize default properties from  CommandLine,  Environment and YamlX files. All these configuration sources has orders, from highest order to lowest order: ‘1. CommandLine 2. Environment 3. Specified Yaml file(file in "salak.config.dir") 4. Yaml file in current directory 5. Yaml file in home directory!salak#Initialize default properties from  CommandLine,  Environment and YamlX files. All these configuration sources has orders, from highest order to lowest order: ‘1. CommandLine 2. Environment 3. Specified Yaml file(file in "salak.config.dir") 4. Yaml file in current directory 5. Yaml file in home directory salakOspecify default config file name, can reset by config "salak.config.name" from  CommandLine or  Environment.!salakOspecify default config file name, can reset by config "salak.config.name" from  CommandLine or  Environment.salakparser for command line"  !" !     7       !"#$%&'()*+,-./0123456789:;<=>?@AB"salak-0.2.2-HLiz7GqPfQI2sVzBD1wzGm Data.SalakData.Salak.TypesData.Salak.OperationData.Salak.EnvironmentData.Salak.CommandLineData.Salak.AesonData.Salak.YamlLoadPropertiesFromPropertiesfromPropertiesReturn PropertiesPropertyPNumPStrPBoolKeyemptytoKeysinsertlookuprunLoad askPropertiessetValue.?>.|=.?=.>>loadEnvironmentParseCommandLinedefaultParseCommandLineloadCommandLineloadJSONloadYamlloadYamlIfExistsFileNamedefaultPropertiesdefaultProperties'defaultPropertiesWithFiledefaultPropertiesWithFile'baseGHC.Base.makeProperties ErrResultEmptyKeyFail singleton singletonMap insertMapjoinKey toNumericto loadIfExistsmakePropertiesFromEnvironmentmakePropertiesFromEnvironment'makePropertiesFromCommandLinemakePropertiesFromCommandLine'makePropertiesFromJson$aeson-1.4.2.0-Dzbo5wshHlhHZyJApR1zxeData.Aeson.Types.InternalValuejsonToProperties fromArraymakePropertiesFromYaml