feat: added file loader

This commit is contained in:
darwincereska
2026-06-08 12:38:41 -04:00
parent 56339890e5
commit 36c74e0c25
8 changed files with 359 additions and 87 deletions
+16 -5
View File
@@ -1,15 +1,26 @@
use envkit::EnvLoader;
fn main() -> Result<(), envkit::error::EnvError> {
let loader = EnvLoader;
unsafe {
std::env::set_var("PORT", "8080");
std::env::set_var("DEBUG", "true");
std::env::set_var("APP_NAME", "envkit");
std::env::set_var("ALLOWED_PORTS", "8080, 8081, 8082");
}
let loader = EnvLoader::new();
let port: u16 = loader.get("PORT")?;
let debug: bool = loader.get_or("DEBUG", false);
let app_name: String = loader.get_opt("APP_NAME").unwrap_or_else(|| "envkit".to_string());
let app_name: String = loader
.get_opt("APP_NAME")
.unwrap_or_else(|| "envkit".to_string());
let allowed_ports: Vec<u16> = loader.get("ALLOWED_PORTS")?;
println!("port={port}");
println!("debug={debug}");
println!("app_name={app_name}");
println!("{app_name}");
println!("port: {port}");
println!("debug: {debug}");
println!("allowed ports: {allowed_ports:?}");
Ok(())
}
+10 -4
View File
@@ -1,16 +1,22 @@
use envkit::EnvLoader;
fn main() -> Result<(), envkit::error::EnvError> {
let loader = EnvLoader;
unsafe {
std::env::set_var("APP_HOST", "127.0.0.1");
std::env::set_var("APP_PORT", "3000");
std::env::set_var("APP_ENABLED", "yes");
}
let loader = EnvLoader::new();
let app = loader.with_prefix("APP_");
let host: String = app.get("HOST")?;
let port: u16 = app.get_or("PORT", 8080);
let enabled: bool = app.get_or("ENABLED", false);
println!("host={host}");
println!("port={port}");
println!("enabled={enabled}");
println!("host: {host}");
println!("port: {port}");
println!("enabled: {enabled}");
Ok(())
}