1个不稳定版本
0.1.0 | 2023年10月27日 |
---|
#1101 in 编码
1,371 每月下载量
在 2 crates 中使用
35KB
952 代码行
serde-envfile
基于dotenvy
和envy
crate构建,serde-envfile
支持从文件(from_file
、to_file
)、字符串(from_str
、to_string
)或应用程序的环境(from_env
、to_env
)中序列化和反序列化环境变量。
安装 ☁️
扩展你的Cargo.toml
配置文件,将serde-envfile
作为一个依赖项包括在内,或者使用Cargo包管理器安装此包。
cargo add serde-envfile
使用 🔨
use serde::{Deserialize, Serialize};
use serde_envfile::{Error, from_str, to_string};
#[derive(Debug, Deserialize, Serialize)]
struct Test {
hello: String,
}
fn main() -> Result<(), Error> {
let env = "HELLO=\"WORLD\"";
let test: Test = from_str(env)?;
let env = to_string(&test)?;
println!("{}", env);
Ok(())
}
引入了Value
类型,serde-envfile
提供了一种更灵活的方式来处理环境变量。
use serde_envfile::{to_string, Error, Value};
fn main() -> Result<(), Error> {
let mut env = Value::new();
env.insert("hello".into(), "world".into());
let env = to_string(&env)?;
println!("{}", env);
Ok(())
}
依赖项
~2–2.8MB
~47K SLoC