úÎ!6ì3ª%      !"#$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()* % +, - .'/01NoneÖ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£2salakLoad  from  Environmentsalak Load Properties from CommandLine23NonesalakLoad default propertiessalak Run loadersalakAsk properties setter.None salak@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")4salakLoad  from  CommandLinesalak Load Properties from CommandLine45None=?Xœ6salakLoad  from JSON 7salakLoad Properties from JSON Value689NoneË:salakLoad  from Yaml file.salakLoad Properties from Yamlsalak#Load Properties from Yaml if exists:(c) 2018 Daniel YUBSD3Daniel YU <leptonyu@gmail.com> experimentalportableNone2~ 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%  !"#$%!"#$    ;       !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG"salak-0.2.3-56e9AexRJ0M1fGWq5aCIry Data.SalakData.Salak.TypesData.Salak.OperationData.Salak.EnvironmentData.Salak.DynamicData.Salak.CommandLineData.Salak.AesonData.Salak.YamlLoadPropertiesFromPropertiesfromPropertiesReturn PropertiesPropertyPNumPStrPBoolemptytoKeysinsertlookuprunLoad askPropertiessetValue.?>.|=.?=.>>loadEnvironmentLoaderTload runLoaderaskSetPropertiesParseCommandLinedefaultParseCommandLineloadCommandLineloadJSONloadYamlloadYamlIfExistsFileNamedefaultPropertiesdefaultProperties'defaultPropertiesWithFiledefaultPropertiesWithFile'KeybaseGHC.Base.makeProperties ErrResultEmptyKeyFail singleton singletonMap insertMapjoinKey toNumericto loadIfExistsmakePropertiesFromEnvironmentmakePropertiesFromEnvironment'makePropertiesFromCommandLinemakePropertiesFromCommandLine'makePropertiesFromJson$aeson-1.4.2.0-Dzbo5wshHlhHZyJApR1zxeData.Aeson.Types.InternalValuejsonToProperties fromArraymakePropertiesFromYaml