4个版本 (2个重大变更)
0.3.1 | 2024年8月5日 |
---|---|
0.3.0 | 2024年7月23日 |
0.2.0 | 2024年7月18日 |
0.1.0 | 2024年6月28日 |
#219 在 配置
291 每月下载量
在 2 crates 中使用
87KB
2.5K SLoC
rpkl
为Rust的Pkl语言提供语言绑定。
需要在您的路径上可用pkl二进制文件。您可以使用他们的文档中的步骤为您的操作系统安装pkl: https://pkl-lang.org/main/current/pkl-cli/index.html#installation
用法
ip = "127.0.0.1"
database {
username = "admin"
password = "secret"
}
#[derive(Deserialize)]
struct Config {
ip: String,
database: Database,
}
#[derive(Deserialize)]
struct Database {
username: String,
password: String,
}
let config: Config = rpkl::value_from_config("./config.pkl")?;
代码生成
基本功能正常,但仍处于开发中。如果您想尝试它,可以启用 codegen
功能。
let mut evaluator = rpkl::evaluator::Evaluator::new()?;
let pkl_mod = evaluator.evaluate_module(PathBuf::from("./config.pkl"))?;
pkl_mod.codegen()?;
依赖项
~0.9–7.5MB
~55K SLoC