pub struct Config { /* private fields */ }Expand description
Object representing an open config file, use lib_config::open_from_path or lib_config::open_from_home to get an instance
§Usage
A Config may contain primitive values (such as strings or numbers), arrays or Sections. A Section is a JSON object that can contain the same values as a Config,
useful to logically split the config file. To save the contents of the config call the save() associated function.
Implementations§
Source§impl Config
impl Config
Sourcepub fn write_value<K: Into<String>, V: Serialize>(
&mut self,
key: K,
value: V,
) -> Result<(), Error>
pub fn write_value<K: Into<String>, V: Serialize>( &mut self, key: K, value: V, ) -> Result<(), Error>
Writes a valute to the given key, if it doesn’t exist, inserts the key - value pair
Sourcepub fn read_value<K: Into<String>, V: DeserializeOwned>(
&self,
key: K,
) -> Result<V, Error>
pub fn read_value<K: Into<String>, V: DeserializeOwned>( &self, key: K, ) -> Result<V, Error>
Reads a value from the given key, if the key does not exist returns Err
Sourcepub fn read_or_insert<K: Into<String>, V: DeserializeOwned + Serialize + Clone>(
&mut self,
key: K,
value: V,
) -> Result<V, Error>
pub fn read_or_insert<K: Into<String>, V: DeserializeOwned + Serialize + Clone>( &mut self, key: K, value: V, ) -> Result<V, Error>
Reads a value from the given key, if the key does not exists, inserts it with the given value
Sourcepub fn update_value<K, V, Out, F>(
&mut self,
key: &K,
f_upd: F,
) -> Result<Out, Error>
pub fn update_value<K, V, Out, F>( &mut self, key: &K, f_upd: F, ) -> Result<Out, Error>
Updates a value with the given key using the provided function, returns the final value of the key, if the key does not exist returns Err
Sourcepub fn get_section<K>(&self, key: &K) -> Result<Section<&JObject>, Error>
pub fn get_section<K>(&self, key: &K) -> Result<Section<&JObject>, Error>
Gets an immutable reference to Section at the given key
Sourcepub fn get_section_mut<K>(
&mut self,
key: &K,
) -> Result<Section<&mut JObject>, Error>
pub fn get_section_mut<K>( &mut self, key: &K, ) -> Result<Section<&mut JObject>, Error>
Gets a mutable reference to Section at the given key
§Remarks
Changing the Section’s value will also change the Config data
Sourcepub fn clone_data(&self) -> JObject
pub fn clone_data(&self) -> JObject
Clones the Config data, the result does not have any reference to the original Config