Loads and decodes TOML files into Rust structures
```rust extern crate rustcserialize; extern crate tomlconfig;
use rustcserialize::{Encodable, Decodable}; use std::path::Path; use tomlconfig::ConfigFactory;
struct Config { nested: NestedConfig }
// Defaults will be used for missing/invalid configurations in the TOML config file impl Default for Config { fn default() -> Config { Config { nested: NestedConfig::default() } } }
struct NestedConfig {
value: String,
values: Vec
impl Default for NestedConfig { fn default() -> NestedConfig { NestedConfig { value: "default".to_owned(), values: vec![0, 0, 0] } } }
/* config.toml: [nested] value = "test" values = [1, 2, 3] */
let config: Config = ConfigFactory::load(Path::new("config.toml")); asserteq!(config.nested.value, "test"); asserteq!(config.nested.values, vec![1, 2, 3]); ```