From 589036c19409c7626a5bafda5af96c2fbc6a7de5 Mon Sep 17 00:00:00 2001 From: Ryan Leckey Date: Thu, 26 Jan 2017 19:02:13 -0800 Subject: Refactor the file source to allow for N formats; implement JSON. --- examples/basic-file/Cargo.toml | 7 ------- examples/basic-file/src/main.rs | 9 --------- examples/basic/Cargo.toml | 3 +-- examples/file-json/Cargo.toml | 6 ++++++ examples/file-json/Settings.json | 5 +++++ examples/file-json/src/main.rs | 10 ++++++++++ examples/file-toml/Cargo.toml | 6 ++++++ examples/file-toml/src/main.rs | 9 +++++++++ 8 files changed, 37 insertions(+), 18 deletions(-) delete mode 100644 examples/basic-file/Cargo.toml delete mode 100644 examples/basic-file/src/main.rs create mode 100644 examples/file-json/Cargo.toml create mode 100644 examples/file-json/Settings.json create mode 100644 examples/file-json/src/main.rs create mode 100644 examples/file-toml/Cargo.toml create mode 100644 examples/file-toml/src/main.rs (limited to 'examples') diff --git a/examples/basic-file/Cargo.toml b/examples/basic-file/Cargo.toml deleted file mode 100644 index ffef864..0000000 --- a/examples/basic-file/Cargo.toml +++ /dev/null @@ -1,7 +0,0 @@ -[package] -name = "basic-file" -version = "0.1.0" -authors = ["Ryan Leckey "] - -[dependencies] -config = { path = "../.." } diff --git a/examples/basic-file/src/main.rs b/examples/basic-file/src/main.rs deleted file mode 100644 index ae394f9..0000000 --- a/examples/basic-file/src/main.rs +++ /dev/null @@ -1,9 +0,0 @@ -extern crate config; - -fn main() { - // Read configuration from $(cwd)/Cargo.toml - config::merge(config::File::with_name("Cargo")).unwrap(); - - println!("package.name = {:?}", config::get_str("package.name")); - println!("package.version = {:?}", config::get_str("package.version")); -} diff --git a/examples/basic/Cargo.toml b/examples/basic/Cargo.toml index 2cb273b..7ede162 100644 --- a/examples/basic/Cargo.toml +++ b/examples/basic/Cargo.toml @@ -1,7 +1,6 @@ [package] name = "basic" version = "0.1.0" -authors = ["Ryan Leckey "] [dependencies] -config = { path = "../.." } +config = { path = "../..", default-features = false } diff --git a/examples/file-json/Cargo.toml b/examples/file-json/Cargo.toml new file mode 100644 index 0000000..7223f35 --- /dev/null +++ b/examples/file-json/Cargo.toml @@ -0,0 +1,6 @@ +[package] +name = "file-json" +version = "0.1.0" + +[dependencies] +config = { path = "../..", default-features = false, features = ["json"] } diff --git a/examples/file-json/Settings.json b/examples/file-json/Settings.json new file mode 100644 index 0000000..72b28e6 --- /dev/null +++ b/examples/file-json/Settings.json @@ -0,0 +1,5 @@ +{ + "debug": false, + "pi": 3.14159, + "weight": 150 +} diff --git a/examples/file-json/src/main.rs b/examples/file-json/src/main.rs new file mode 100644 index 0000000..9c636ac --- /dev/null +++ b/examples/file-json/src/main.rs @@ -0,0 +1,10 @@ +extern crate config; + +fn main() { + // Read configuration from "Settings.json" + config::merge(config::File::new("Settings", config::FileFormat::Json)).unwrap(); + + println!("debug = {:?}", config::get("debug")); + println!("pi = {:?}", config::get("pi")); + println!("weight = {:?}", config::get("weight")); +} diff --git a/examples/file-toml/Cargo.toml b/examples/file-toml/Cargo.toml new file mode 100644 index 0000000..6f45799 --- /dev/null +++ b/examples/file-toml/Cargo.toml @@ -0,0 +1,6 @@ +[package] +name = "file-toml" +version = "0.1.0" + +[dependencies] +config = { path = "../.." } diff --git a/examples/file-toml/src/main.rs b/examples/file-toml/src/main.rs new file mode 100644 index 0000000..03ce61a --- /dev/null +++ b/examples/file-toml/src/main.rs @@ -0,0 +1,9 @@ +extern crate config; + +fn main() { + // Read configuration from $(cwd)/Cargo.toml + config::merge(config::File::new("Cargo", config::FileFormat::Toml)).unwrap(); + + println!("package.name = {:?}", config::get_str("package.name")); + println!("package.version = {:?}", config::get_str("package.version")); +} -- cgit v1.2.3