From a8bafc072b25b90249095b6ba4134ccdd08264e7 Mon Sep 17 00:00:00 2001 From: Lucien Cartier-Tilet Date: Sat, 11 Jul 2020 17:37:45 +0200 Subject: [PATCH] Remove unnecessary code This commit removes some unnecessary code, such as an extra `String` clone, unnecessary `return` statements, and an inherent `to_string` function for the `Regex` wrapper. A double-quote character considered as a string literal by the compiler was also changed to a single-quote character, this time considered as a character by the compiler, for some optimization. Also a newline is added in order to improve code readablitiy. --- src/settings/mod.rs | 5 +++-- src/settings/rule/mod.rs | 2 +- src/settings/rule/regex_wrapper.rs | 4 ---- src/utils/mod.rs | 2 +- 4 files changed, 5 insertions(+), 8 deletions(-) diff --git a/src/settings/mod.rs b/src/settings/mod.rs index 9da6efe..c56553d 100644 --- a/src/settings/mod.rs +++ b/src/settings/mod.rs @@ -87,6 +87,7 @@ macro_rules! decode_settings { } use std::collections::HashMap; + /// Representation of the software’s settings /// /// This struct represents all the settings the software has to follow @@ -334,7 +335,7 @@ impl Settings { pub fn apply(&self, s: String) -> std::result::Result { // TODO Add Error handling let rules = self.update_rules().unwrap(); - let mut s = s.clone(); + let mut s = s; debug!("==============================================="); for rule in rules { debug!( @@ -379,7 +380,7 @@ impl FromStr for Settings { Ok(val) => Ok(val), Err(e) => { error!("Could not decode input {}: {}", s, e.to_string()); - return Err(e); + Err(e) } }, } diff --git a/src/settings/rule/mod.rs b/src/settings/rule/mod.rs index 3563945..6ae92a0 100644 --- a/src/settings/rule/mod.rs +++ b/src/settings/rule/mod.rs @@ -95,7 +95,7 @@ impl Rule { impl From for Rule { fn from(source: String) -> Self { - let components: Vec<&str> = source.split_terminator(">").collect(); + let components: Vec<&str> = source.split_terminator('>').collect(); Self { from: Regex::new(components[0]), to: String::from(components[1]), diff --git a/src/settings/rule/regex_wrapper.rs b/src/settings/rule/regex_wrapper.rs index a819765..a035894 100644 --- a/src/settings/rule/regex_wrapper.rs +++ b/src/settings/rule/regex_wrapper.rs @@ -11,10 +11,6 @@ impl Regex { pub fn as_str(&self) -> &str { self.0.as_str() } - - pub fn to_string(&self) -> String { - self.0.to_string() - } } use std::hash::{Hash, Hasher}; diff --git a/src/utils/mod.rs b/src/utils/mod.rs index 5ef64cf..04a7d3a 100644 --- a/src/utils/mod.rs +++ b/src/utils/mod.rs @@ -39,7 +39,7 @@ pub fn read_file(path: &Path) -> Result { match file.read_to_string(&mut content) { Err(why) => { error!("Could not read {}: {}", display, why.to_string()); - return Err(why); + Err(why) } Ok(_) => { info!("Content of {} read", display);