pub struct Configured { /* private fields */ }Expand description
Base implementation of configurable objects
This is a base structure that implements the Configurable trait and can be
used as a base for other structures that need configuration.
§Features
- Automatically implements the
Configurabletrait - Provides configuration change callback mechanism
- Can be inherited and extended
§Examples
ⓘ
use qubit_config::{Config, Configured};
let mut configured = Configured::new();
configured.config_mut().set("port", 8080)?;
let port: i32 = configured.config().get("port")?;
assert_eq!(port, 8080);ⓘ
// Or compose it into other structures
struct Server {
configured: Configured,
// Other fields...
}
impl Server {
fn new() -> Self {
Self {
configured: Configured::new(),
}
}
fn config(&self) -> &Config {
self.configured.config()
}
fn config_mut(&mut self) -> &mut Config {
self.configured.config_mut()
}
}§Author
Haixing Hu
Implementations§
Source§impl Configured
impl Configured
Sourcepub fn with_config(config: Config) -> Self
pub fn with_config(config: Config) -> Self
Creates a configurable object with the specified configuration
§Parameters
config- Configuration object
§Returns
Returns a new configurable object instance
§Examples
ⓘ
use common_rs::util::config::{Config, Configured};
let mut configured = Configured::with_config(Config::new());
assert!(configured.config().is_empty());Trait Implementations§
Source§impl Clone for Configured
impl Clone for Configured
Source§fn clone(&self) -> Configured
fn clone(&self) -> Configured
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Configurable for Configured
impl Configurable for Configured
Source§fn config_mut(&mut self) -> &mut Config
fn config_mut(&mut self) -> &mut Config
Gets a mutable reference to the configuration Read more
Source§fn set_config(&mut self, config: Config)
fn set_config(&mut self, config: Config)
Sets the configuration Read more
Source§fn on_config_changed(&mut self)
fn on_config_changed(&mut self)
Callback after configuration changes Read more
Source§impl Debug for Configured
impl Debug for Configured
Source§impl Default for Configured
impl Default for Configured
Source§impl PartialEq for Configured
impl PartialEq for Configured
impl StructuralPartialEq for Configured
Auto Trait Implementations§
impl Freeze for Configured
impl RefUnwindSafe for Configured
impl Send for Configured
impl Sync for Configured
impl Unpin for Configured
impl UnsafeUnpin for Configured
impl UnwindSafe for Configured
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more