From 2b6c8b4296a672b269203a8fe1129a50412e21ce Mon Sep 17 00:00:00 2001 From: Damien Elmes Date: Thu, 1 Apr 2021 17:37:18 +1000 Subject: [PATCH] tuple type for InvalidInput --- rslib/src/browser_table.rs | 16 ++++++---------- rslib/src/error/mod.rs | 6 +++--- rslib/src/search/mod.rs | 7 ++++--- 3 files changed, 13 insertions(+), 16 deletions(-) diff --git a/rslib/src/browser_table.rs b/rslib/src/browser_table.rs index 6bcf60fdc..b2c975bba 100644 --- a/rslib/src/browser_table.rs +++ b/rslib/src/browser_table.rs @@ -204,18 +204,14 @@ impl Note { impl Collection { pub fn browser_row_for_id(&mut self, id: i64) -> Result { if self.get_bool(BoolKey::BrowserTableShowNotesMode) { - let columns = - self.get_desktop_browser_note_columns() - .ok_or(AnkiError::InvalidInput { - info: "Note columns not set.".into(), - })?; + let columns = self + .get_desktop_browser_note_columns() + .ok_or(AnkiError::invalid_input("Note columns not set."))?; NoteRowContext::new(self, id)?.browser_row_for_id(&columns) } else { - let columns = - self.get_desktop_browser_card_columns() - .ok_or(AnkiError::InvalidInput { - info: "Card columns not set.".into(), - })?; + let columns = self + .get_desktop_browser_card_columns() + .ok_or(AnkiError::invalid_input("Card columns not set."))?; CardRowContext::new(self, id, card_render_required(&columns))? .browser_row_for_id(&columns) } diff --git a/rslib/src/error/mod.rs b/rslib/src/error/mod.rs index 6aeaba8de..f0106b7ab 100644 --- a/rslib/src/error/mod.rs +++ b/rslib/src/error/mod.rs @@ -19,7 +19,7 @@ pub type Result = std::result::Result; #[derive(Debug, PartialEq)] pub enum AnkiError { - InvalidInput { info: String }, + InvalidInput(String), TemplateError { info: String }, TemplateSaveError { ordinal: usize }, IoError { info: String }, @@ -49,7 +49,7 @@ impl Display for AnkiError { // error helpers impl AnkiError { pub(crate) fn invalid_input>(s: S) -> AnkiError { - AnkiError::InvalidInput { info: s.into() } + AnkiError::InvalidInput(s.into()) } pub fn localized_description(&self, tr: &I18n) -> String { @@ -65,7 +65,7 @@ impl AnkiError { .into(), AnkiError::DbError(err) => err.localized_description(tr), AnkiError::SearchError(kind) => kind.localized_description(&tr), - AnkiError::InvalidInput { info } => { + AnkiError::InvalidInput(info) => { if info.is_empty() { tr.errors_invalid_input_empty().into() } else { diff --git a/rslib/src/search/mod.rs b/rslib/src/search/mod.rs index 6f3d60ab4..8dc6eb273 100644 --- a/rslib/src/search/mod.rs +++ b/rslib/src/search/mod.rs @@ -211,9 +211,10 @@ fn write_order(sql: &mut String, items: SearchItems, kind: SortKind, reverse: bo SearchItems::Notes => note_order_from_sortkind(kind), }; if order.is_empty() { - return Err(AnkiError::InvalidInput { - info: format!("Can't sort {:?} by {:?}.", items, kind), - }); + return Err(AnkiError::invalid_input(format!( + "Can't sort {:?} by {:?}.", + items, kind + ))); } if reverse { sql.push_str(