1 个不稳定版本

0.1.0 2023年12月25日

#2763 in 解析器实现

Apache-2.0

11KB
145

tide_rs

简介

tide_rs 是一个为 Rust 设计的灵活配置解析器,用于处理 TIDE 配置格式。它提供了一个易于使用的 API,用于从 TIDE 文件中访问配置值。

有关 TIDE 配置格式的更多信息,请参阅 TIDE

[!重要]
目前这只是一个爱好项目。我一直对配置框架的设计和实现很感兴趣,这是我尝试创建的一个。我不确定它是否会被使用,但我希望了解更多关于配置处理的知识。如果你对这个项目感兴趣,请随时贡献或提供反馈。

使用

将以下内容添加到您的 Cargo.toml 文件中

[dependencies]
tide_rs = "0.1.0"

示例

use tide_rs::TIDE;
use tide_rs::ConfigValue;

fn main() {
    let config_file_path = "./path/tp/config.tide";

    let tide_config = match TIDE::new(config_file_path) {
        Ok(cfg) => cfg,
        Err(e) => {
            eprintln!("Failed to load configuration: {:?}", e);
            return;
        }
    };

    // Use get_config_value method to access configuration values
    // Example of accessing a string value.
    match tide_config.get_config_value("database.type") {
        Ok(ConfigValue::String(value)) => println!("Database type: {}", value),
        _ => println!("Database type not found or not a string."),
    }
}

环境变量

TIDE 配置值可以通过环境变量覆盖。环境变量名称是配置值的路径,路径分隔符被下划线替换。

例如 database.credentials.username 将由 DATABASE_CREDENTIALS_USERNAME 环境变量覆盖。

示例

使用 tide_rs 解析 TIDE 文件的示例可以在示例目录中找到。

cargo run --example main

贡献

欢迎贡献。请随时打开问题或提交拉取请求。

无运行时依赖