summaryrefslogtreecommitdiffstats
path: root/examples
diff options
context:
space:
mode:
authorRyan Leckey <ryan@launchbadge.com>2017-06-22 14:14:29 -0700
committerRyan Leckey <ryan@launchbadge.com>2017-06-22 14:30:51 -0700
commit2b438ed9b53fee5689032f3b5fcdda8d15becd5f (patch)
tree48374e66a6594c7d11d19fe38f7e23df731b52be /examples
parent04d3ee8f70337e4899932b92262fbeec2dbb1bd9 (diff)
Add builder API to Config
Diffstat (limited to 'examples')
-rw-r--r--examples/simple/Cargo.toml6
-rw-r--r--examples/simple/Settings.toml3
-rw-r--r--examples/simple/src/main.rs17
3 files changed, 26 insertions, 0 deletions
diff --git a/examples/simple/Cargo.toml b/examples/simple/Cargo.toml
new file mode 100644
index 0000000..196f742
--- /dev/null
+++ b/examples/simple/Cargo.toml
@@ -0,0 +1,6 @@
+[package]
+name = "simple"
+version = "0.1.0"
+
+[dependencies]
+config = { path = "../../" }
diff --git a/examples/simple/Settings.toml b/examples/simple/Settings.toml
new file mode 100644
index 0000000..fd6d3c6
--- /dev/null
+++ b/examples/simple/Settings.toml
@@ -0,0 +1,3 @@
+debug = false
+priority = 32
+key = "189rjfadoisfj8923fjio"
diff --git a/examples/simple/src/main.rs b/examples/simple/src/main.rs
new file mode 100644
index 0000000..debad02
--- /dev/null
+++ b/examples/simple/src/main.rs
@@ -0,0 +1,17 @@
+extern crate config;
+
+use std::collections::HashMap;
+
+fn main() {
+ let settings = config::Config::default()
+ // Add in `./Settings.toml`
+ .merge(config::File::with_name("Settings"))
+ // Add in settings from the environment (with a prefix of APP)
+ // Eg.. `APP_DEBUG=1 ./target/app` would set the `debug` key
+ .merge(config::Environment::with_prefix("APP"))
+ .unwrap();
+
+ // Print out our settings (as a HashMap)
+ println!("{:?}",
+ settings.deserialize::<HashMap<String, String>>().unwrap());
+}