in src/settings/config.rs [143:199]
fn try_from(value: &OwnedStruct) -> Result<Self, Self::Error> {
let mut ui = UiConfig::default();
if let Some(elem) = value.get("auto_commit") {
ui.auto_commit = elem
.as_bool()
.ok_or(usage_error("`ui.auto_commit` should be a bool"))?
}
if let Some(elem) = value.get("prompt") {
ui.prompt = Some(
elem.as_str()
.ok_or(usage_error("`ui.prompt` should be a string"))?
.to_string(),
);
};
if let Some(elem) = value.get("format") {
let format = elem
.as_str()
.ok_or(usage_error("`ui.format` should be a string"))?;
ui.format = FormatMode::from_str(format)?;
}
if let Some(elem) = value.get("edit_mode") {
let edit_mode = elem
.as_str()
.ok_or(usage_error("`ui.edit_mode` should be a string"))?;
ui.edit_mode = EditMode::from_str(edit_mode)?;
}
if let Some(elem) = value.get("display_welcome") {
ui.display_welcome = elem
.as_bool()
.ok_or(usage_error("`ui.display_welcome` should be a bool"))?
}
if let Some(elem) = value.get("display_ctrl_signals") {
ui.display_ctrl_signals = elem
.as_bool()
.ok_or(usage_error("`ui.display_ctrl_signals` should be a bool"))?
}
if let Some(elem) = value.get("display_query_metrics") {
ui.display_query_metrics = elem
.as_bool()
.ok_or(usage_error("`ui.display_query_metrics` should be a bool"))?
}
if let Some(elem) = value.get("terminator_required") {
ui.terminator_required = elem
.as_bool()
.ok_or(usage_error("`ui.terminator_required` should be a bool"))?
}
Ok(ui)
}