9

我阅读了出色的 24 天 hackage。我想尝试一下包 配置器

我如何检索数据列表,例如

herlist = [1, "foo", true] ? 
4

1 回答 1

11

如果你有线

herlist = [1, "foo", true] 

在名为“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

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

在查找键时,"herlist"我们需要明确地告诉编译器我们期望的类型,因为在像这样的简单程序中,我们只打印值,编译器无法从上下文推断它。

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

于 2013-01-15T15:59:47.460 回答