diff --git a/base/src/expressions/lexer/structured_references.rs b/base/src/expressions/lexer/structured_references.rs index a14b9fe..a2f22d4 100644 --- a/base/src/expressions/lexer/structured_references.rs +++ b/base/src/expressions/lexer/structured_references.rs @@ -23,19 +23,19 @@ impl Lexer { // TODO(TD): There are better ways of doing this :) let rest_of_formula: String = self.chars[self.position..self.len].iter().collect(); let specifier = if rest_of_formula.starts_with("#This Row]") { - self.position += "#This Row]".bytes().len(); + self.position += "#This Row]".len(); TableSpecifier::ThisRow } else if rest_of_formula.starts_with("#All]") { - self.position += "#All]".bytes().len(); + self.position += "#All]".len(); TableSpecifier::All } else if rest_of_formula.starts_with("#Data]") { - self.position += "#Data]".bytes().len(); + self.position += "#Data]".len(); TableSpecifier::Data } else if rest_of_formula.starts_with("#Headers]") { - self.position += "#Headers]".bytes().len(); + self.position += "#Headers]".len(); TableSpecifier::Headers } else if rest_of_formula.starts_with("#Totals]") { - self.position += "#Totals]".bytes().len(); + self.position += "#Totals]".len(); TableSpecifier::Totals } else { return Err(LexerError { diff --git a/base/src/expressions/token.rs b/base/src/expressions/token.rs index cd98144..05666f0 100644 --- a/base/src/expressions/token.rs +++ b/base/src/expressions/token.rs @@ -197,7 +197,7 @@ pub fn is_english_error_string(name: &str) -> bool { "#REF!", "#NAME?", "#VALUE!", "#DIV/0!", "#N/A", "#NUM!", "#ERROR!", "#N/IMPL!", "#SPILL!", "#CALC!", "#CIRC!", "#NULL!", ]; - names.iter().any(|e| *e == name) + names.contains(&name) } #[derive(Debug, PartialEq, Clone, Serialize, Deserialize)] diff --git a/base/src/formatter/lexer.rs b/base/src/formatter/lexer.rs index 014755c..b99eff4 100644 --- a/base/src/formatter/lexer.rs +++ b/base/src/formatter/lexer.rs @@ -178,10 +178,7 @@ impl Lexer { } } self.position = position; - match chars.parse::() { - Err(_) => None, - Ok(v) => Some(v), - } + chars.parse::().ok() } fn consume_condition(&mut self) -> Option<(Compare, f64)> { diff --git a/xlsx/src/import/tables.rs b/xlsx/src/import/tables.rs index 72ca0c5..2818192 100644 --- a/xlsx/src/import/tables.rs +++ b/xlsx/src/import/tables.rs @@ -75,30 +75,21 @@ pub(crate) fn load_table( // style index of the header row of the table let header_row_dxf_id = if let Some(index_str) = table.attribute("headerRowDxfId") { - match index_str.parse::() { - Ok(i) => Some(i), - Err(_) => None, - } + index_str.parse::().ok() } else { None }; // style index of the header row of the table let data_dxf_id = if let Some(index_str) = table.attribute("headerRowDxfId") { - match index_str.parse::() { - Ok(i) => Some(i), - Err(_) => None, - } + index_str.parse::().ok() } else { None }; // style index of the totals row of the table let totals_row_dxf_id = if let Some(index_str) = table.attribute("totalsRowDxfId") { - match index_str.parse::() { - Ok(i) => Some(i), - Err(_) => None, - } + index_str.parse::().ok() } else { None }; @@ -143,30 +134,21 @@ pub(crate) fn load_table( // style index of the header row of the table let header_row_dxf_id = if let Some(index_str) = table_column.attribute("headerRowDxfId") { - match index_str.parse::() { - Ok(i) => Some(i), - Err(_) => None, - } + index_str.parse::().ok() } else { None }; // style index of the header row of the table column let data_dxf_id = if let Some(index_str) = table_column.attribute("headerRowDxfId") { - match index_str.parse::() { - Ok(i) => Some(i), - Err(_) => None, - } + index_str.parse::().ok() } else { None }; // style index of the totals row of the table column let totals_row_dxf_id = if let Some(index_str) = table_column.attribute("totalsRowDxfId") { - match index_str.parse::() { - Ok(i) => Some(i), - Err(_) => None, - } + index_str.parse::().ok() } else { None };