[−][src]Crate configparser
A simple configuration parsing utility with no dependencies built on Rust.
configparser
works on a subset of ini configuration syntax. It is inspired by Python's configparser
.
This release is experimental, use at your own risk.
Syntax
You can get a HashMap
of type HashMap<String, HashMap<String, String>>
with the Ini
struct, like:
use configparser::ini::Ini; fn main() { let config = Ini::new(); match config.load("Path/to/file...") { Err(why) => panic!("{}", why), Ok(_) => () }; // You can then access the map normally like: let map = match config.get_map() { None => HashMap::new(), // or whatever you want to if the HashMap is empty Some(map) => map } for (key, value) in &map { println!("{:?}: {:?}", key, value); } // ...and do what you want with it. :) }
The Ini
struct is the way to go forward and will soon have more features, such as reading from a string, insertion, deletion and variable access.
As of now, there's also a public function, to load an ini-syntax file and parse it into a hashmap. Support for this will be dropped in the near future, and will be changed into a macro when it's dropped.
use configparser::ini; fn main() { let map = ini::load("Path/to/file..."); // You can then access the map normally like: for (key, value) in &map { println!("{:?}: {:?}", key, value); } // ...and do what you want with it. :) }
Modules
ini | The ini module provides all the things necessary to load and parse ini-syntax files.
The most important of which is the |