如何使用配置器

jin*_*ou2 8 haskell

我读了很好的24天的hackage.我想尝试一下包 配置器

我该如何检索数据列表

herlist = [1, "foo", true] ? 
Run Code Online (Sandbox Code Playgroud)

sha*_*ang 10

如果你有线

herlist = [1, "foo", true] 
Run Code Online (Sandbox Code Playgroud)

在一个名为"example.cfg"的配置文件中,然后加载最简单的程序并显示该值

{-# LANGUAGE OverloadedStrings #-}

import Data.Configurator
import Data.Configurator.Types (Value)

main = do
    cfg <- load [Required "example.cfg"]

    lst <- require cfg "herlist" :: IO Value

    print lst
Run Code Online (Sandbox Code Playgroud)

使用OverloadedStrings扩展名,以便我们可以使用普通的字符串文字作为配置键,而无需显式转换它们Text.

在查找键时,"herlist"我们需要明确地告诉编译器我们期望的类型,因为在这样的简单程序中我们除了打印值之外什么都不做,编译器无法从上下文中推断它.

类型Value是配置值的原始类型.在实际程序中,我们通常会Value通过定义Configured类型类的实例将其转换为程序使用的自定义类型.