3 个稳定版本

1.1.0 2024 年 8 月 17 日
1.0.1 2024 年 8 月 17 日
1.0.0 2024 年 7 月 24 日

#204 in 配置

Download history 120/week @ 2024-07-22 12/week @ 2024-07-29 203/week @ 2024-08-12

83 每月下载量
用于 htrace

MIT/Apache

13KB
318

HConfig

一个简化从目录访问 Json 配置文件的文件配置管理库。

如果配置文件不存在,它将被创建。任何变量通过路径访问。保存使用原子方法,不允许其他应用程序/进程等部分加载。

使用的 serde_json crate 通过 "Hconfig::serde_json" 重新导出

在线文档

主分支

示例

fn main()
{
    // configuration path, the directory need to be existing or created before continuing
	HConfigManager::singleton().setConfPath("./config");
	
	// get a "config", the name "example" mean "./config/example.json"
	let mut config = HConfigManager::singleton().get("example");
	
	// exemple of getting a var and getting a string (parse is from serde_json)
	let myVar: Option<Value> = config.get("name");
	let myString: String = config.get("path/to/myvar").unwrap().as_str().unwrap().to_string();
	
	config.set("path/to/save",JsonValue::String("test is update".to_string()));
	
	// save config modification.
	config.save();
}

您还可以查看测试。

许可证

根据您的选择,许可协议为

贡献

除非您明确说明,否则您提交的任何有意包含在工作中的贡献,根据 Apache-2.0 许可证定义,应按照上述方式双重许可,没有任何额外的条款或条件。

依赖项

~2–8MB
~59K SLoC