1pub mod configs;
2
3#[cfg(test)]
4mod tests {
5 use super::*;
6
7 #[test]
8 fn it_works() -> std::io::Result<()> {
9 println!("Hello, world!");
10
11 let file_path = String::from("E://irust//iconf//src//config.toml");
12
13 unsafe {
14 let _ = configs::init(file_path);
15 println!("{:?}", configs::CONFIG);
16
17 let c = configs::CONFIG.as_ref().unwrap();
18 println!("{:?}", c);
19
20 println!("{}", c.file_path());
21 println!("{}", c.settings());
22
23 let env = c.settings()["basics"]["env"].as_str().unwrap();
24 let port = c.settings()["basics"]["port"].as_integer().unwrap();
25 println!("env={} port={}", env, port);
26
27 print_type_of(&port);
28
29 println!("env = {}", configs::get_str("basics", "env"));
30 println!("port = {}", configs::get_int("basics", "port"));
31 println!("pi = {}", configs::get_float("basics", "pi"));
32 println!("isOk = {}", configs::get_bool("basics", "isOk"));
33 print_type_of(&configs::get_bool("basics", "isOk"));
34
35 }
36
37 Ok(())
38 }
39}
40
41fn print_type_of<T>(_: &T) {
42 println!("print_type_of 类型是 = {}", std::any::type_name::<T>())
43}