pub struct ArgsSource { /* private fields */ }Expand description
CLI override source definition.
ArgsSource parses the same --config, --profile, and --set key=value
flags that tier accepts through its reusable clap integration.
§Examples
use serde::{Deserialize, Serialize};
use tier::{ArgsSource, ConfigLoader};
#[derive(Debug, Clone, Serialize, Deserialize)]
struct AppConfig {
port: u16,
}
impl Default for AppConfig {
fn default() -> Self {
Self { port: 3000 }
}
}
let loaded = ConfigLoader::new(AppConfig::default())
.args(ArgsSource::from_args(["app", "--set", "port=7000"]))
.load()?;
assert_eq!(loaded.port, 7000);Implementations§
Source§impl ArgsSource
impl ArgsSource
Trait Implementations§
Source§impl Clone for ArgsSource
impl Clone for ArgsSource
Source§fn clone(&self) -> ArgsSource
fn clone(&self) -> ArgsSource
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 moreAuto Trait Implementations§
impl Freeze for ArgsSource
impl RefUnwindSafe for ArgsSource
impl Send for ArgsSource
impl Sync for ArgsSource
impl Unpin for ArgsSource
impl UnsafeUnpin for ArgsSource
impl UnwindSafe for ArgsSource
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