5 个版本

0.1.0 2023年3月15日
0.0.3 2022年10月26日
0.0.2 2022年5月18日
0.0.1 2022年4月23日
0.0.0 2022年4月19日

#1060编码

Download history 2660/week @ 2024-03-14 2489/week @ 2024-03-21 2462/week @ 2024-03-28 1374/week @ 2024-04-04 1486/week @ 2024-04-11 1734/week @ 2024-04-18 1707/week @ 2024-04-25 1376/week @ 2024-05-02 3183/week @ 2024-05-09 2288/week @ 2024-05-16 2100/week @ 2024-05-23 2139/week @ 2024-05-30 1907/week @ 2024-06-06 1358/week @ 2024-06-13 2149/week @ 2024-06-20 1813/week @ 2024-06-27

7,698 每月下载量
用于 blooming

Apache-2.0

34KB
683 代码行

serfig — 构建状态 最新版本

基于 serde 构建的分层配置系统

快速开始

use serde::{Deserialize, Serialize};
use serfig::collectors::{from_env, from_file, from_self};
use serfig::parsers::Toml;
use serfig::Builder;

#[derive(Debug, Serialize, Deserialize, PartialEq, Default)]
#[serde(default)]
struct TestConfig {
    a: String,
    b: String,
    c: i64,
}

fn main() -> anyhow::Result<()> {
    let builder = Builder::default()
        .collect(from_env())
        .collect(from_file(Toml, "config.toml"))
        .collect(from_self(TestConfig::default()));
    let t: TestConfig = builder.build()?;

    println!("{:?}", t);
    Ok(())
}

贡献

有关如何开始为该项目做出贡献的详细信息,请参阅CONTRIBUTING.md指南。

获取帮助

提交问题以报告错误或在讨论中提问。

致谢

本项目高度受config-rs的启发。

许可证

根据Apache License, Version 2.0许可。

依赖项

~2MB
~34K SLoC