mirror of
https://github.com/facebook/sapling.git
synced 2024-10-06 23:07:18 +03:00
configparser: move set_overrides to hg.rs
Summary: It is only used by hg.rs. Move it to decouple the core ConfigSet features from hg's business logic (`--config` flags). Reviewed By: muirdm Differential Revision: D42018679 fbshipit-source-id: a33b9adf0217288ec7bea997a6e3b81fb35cc123
This commit is contained in:
parent
0ce132f975
commit
b90a24fedc
@ -198,26 +198,6 @@ impl ConfigSet {
|
||||
}
|
||||
}
|
||||
|
||||
/// override config values from a list of --config overrides
|
||||
pub(crate) fn set_overrides(&mut self, overrides: &[String]) -> crate::Result<()> {
|
||||
for config_override in overrides {
|
||||
let equals_pos = config_override
|
||||
.find('=')
|
||||
.ok_or_else(|| Error::ParseFlag(config_override.to_string()))?;
|
||||
let section_name_pair = &config_override[..equals_pos];
|
||||
let value = &config_override[equals_pos + 1..];
|
||||
|
||||
let dot_pos = section_name_pair
|
||||
.find('.')
|
||||
.ok_or_else(|| Error::ParseFlag(config_override.to_string()))?;
|
||||
let section = §ion_name_pair[..dot_pos];
|
||||
let name = §ion_name_pair[dot_pos + 1..];
|
||||
|
||||
self.set(section, name, Some(value), &"--config".into());
|
||||
}
|
||||
Ok(())
|
||||
}
|
||||
|
||||
fn load_file(
|
||||
&mut self,
|
||||
path: &Path,
|
||||
|
@ -107,7 +107,7 @@ pub fn load(
|
||||
errors.extend(cfg.load_path(&path, &"--configfile".into()));
|
||||
}
|
||||
|
||||
if let Err(err) = cfg.set_overrides(extra_values) {
|
||||
if let Err(err) = set_overrides(&mut cfg, extra_values) {
|
||||
errors.push(err);
|
||||
}
|
||||
|
||||
@ -130,7 +130,7 @@ pub fn load(
|
||||
cfg.load_path(&path, &"--configfile".into());
|
||||
}
|
||||
|
||||
let _ = cfg.set_overrides(extra_values);
|
||||
let _ = set_overrides(&mut cfg, extra_values);
|
||||
|
||||
Ok(cfg)
|
||||
}
|
||||
@ -252,6 +252,26 @@ impl OptionsHgExt for Options {
|
||||
}
|
||||
}
|
||||
|
||||
/// override config values from a list of --config overrides
|
||||
fn set_overrides(config: &mut ConfigSet, overrides: &[String]) -> crate::Result<()> {
|
||||
for config_override in overrides {
|
||||
let equals_pos = config_override
|
||||
.find('=')
|
||||
.ok_or_else(|| Error::ParseFlag(config_override.to_string()))?;
|
||||
let section_name_pair = &config_override[..equals_pos];
|
||||
let value = &config_override[equals_pos + 1..];
|
||||
|
||||
let dot_pos = section_name_pair
|
||||
.find('.')
|
||||
.ok_or_else(|| Error::ParseFlag(config_override.to_string()))?;
|
||||
let section = §ion_name_pair[..dot_pos];
|
||||
let name = §ion_name_pair[dot_pos + 1..];
|
||||
|
||||
config.set(section, name, Some(value), &"--config".into());
|
||||
}
|
||||
Ok(())
|
||||
}
|
||||
|
||||
impl ConfigSetHgExt for ConfigSet {
|
||||
/// Load system, user config files.
|
||||
fn load<S: Into<Text>, N: Into<Text>>(
|
||||
|
Loading…
Reference in New Issue
Block a user