2 个版本
0.1.2 | 2024年2月11日 |
---|---|
0.1.1 |
|
0.1.0 | 2024年2月11日 |
#1242 在 解析器实现
9KB
118 行
rusty-pkl
rusty-pkl 是一个用于解析 Pkl 配置文件的 Rust 库。Pkl 是一种简单的配置语言,支持分层结构和多种数据类型。
功能
- 将 Pkl 文件解析为 Rust 中的结构化数据表示。
- 支持基本的 Pkl 语法,包括键值对、嵌套对象和常见的字符串、整数、浮点数和布尔值等数据类型。
用法
-
将此存储库克隆到您的本地计算机
-
导航到项目目录
-
使用所需的 Pkl 文件运行解析器
cargo run --example test.rs
示例
假设您有一个名为 example.pkl
的 Pkl 文件,内容如下
name = "Pkl: Configure your Systems in New Ways"
attendants = 100
isInteractive = true
amountLearned = 13.37
bird {
name = "Common wood pigeon"
diet = "Seeds"
taxonomy {
species = "Columba palumbus"
}
}
使用此文件运行解析器将生成表示解析 Pkl 值的结构化输出。
高级用法
您还可以通过库中提供的函数以编程方式访问特定参数,并将它们分配给变量。例如,要访问 name
参数
use pkl_rs::*;
fn main() {
match parse_pkl("examples\\config.pkl") {
Ok(pkl_value) => {
println!("Parsed Pkl value: {:?}", pkl_value);
// You can further process the parsed Pkl value as needed
if let Some(value) = find_parameter(&pkl_value, "name") {
println!("Found name parameter: {:?}", value);
} else {
println!("Parameter 'name' not found.");
}
}
Err(err) => {
eprintln!("Error parsing Pkl file: {}", err);
}
}
}
贡献
贡献绝对受到欢迎和鼓励!贡献可以有多种形式。您可以
许可协议
本项目采用 MIT 许可协议 - 有关详细信息,请参阅 LICENSE 文件。