#toml-config #toml #apply #data

hotreload

一个简单的crate,用于热重载toml配置文件

3个不稳定版本

0.2.1 2024年6月30日
0.2.0 2024年6月27日
0.1.0 2024年1月16日

#270 in 配置

每月下载量39

MIT/Apache

7KB
115

hotreload

一个简单的crate,用于热重载toml配置文件。

用法

use hotreload::{Hotreload, Apply};

#[derive(Default)]
struct Config {
    value: Mutex<i32>
}

#[derive(serde::Deserialize)]
struct Data {
    value: i32
}

impl Apply<Data> for Config {
    fn apply(&self, data: Data) -> hotreload::ApplyResult {
        *self.value.lock().unwrap() = data.value;
        Ok(())
    }
}

fn example() -> Result<(), hotreload::Error> {
    let watcher = Hotreload::<Config, Data>::new("my-config.toml")?;
    let config: Arc<Config> = watcher.config().clone()
}

许可

许可方式为以下之一

任选其一。

依赖

~1–12MB
~84K SLoC