diff options
author | Canop <cano.petrole@gmail.com> | 2021-08-11 12:58:27 +0200 |
---|---|---|
committer | Canop <cano.petrole@gmail.com> | 2021-08-11 12:58:27 +0200 |
commit | c9b840fd85e7eb6393dbb52f4ba3b35cf2f831e7 (patch) | |
tree | aa5771147ccdf761765241ff239e4083a8eba668 /src/pattern | |
parent | 35be7733cee3223bec0c69ab1c693da3a0b7d371 (diff) |
slightly more concise pattern pattern matching
Diffstat (limited to 'src/pattern')
-rw-r--r-- | src/pattern/pattern.rs | 24 |
1 files changed, 8 insertions, 16 deletions
diff --git a/src/pattern/pattern.rs b/src/pattern/pattern.rs index bc77576..20edc70 100644 --- a/src/pattern/pattern.rs +++ b/src/pattern/pattern.rs @@ -114,14 +114,10 @@ impl Pattern { candidate: &str, ) -> Option<NameMatch> { match self { - Self::NameExact(ep) => ep.find(candidate), - Self::NameFuzzy(fp) => fp.find(candidate), - Self::NameRegex(rp) => rp.find(candidate), - Self::NameTokens(tp) => tp.find(candidate), - Self::PathExact(ep) => ep.find(candidate), - Self::PathFuzzy(fp) => fp.find(candidate), - Self::PathRegex(rp) => rp.find(candidate), - Self::PathTokens(tp) => tp.find(candidate), + Self::NameExact(ep) | Self::PathExact(ep) => ep.find(candidate), + Self::NameFuzzy(fp) | Self::PathFuzzy(fp) => fp.find(candidate), + Self::NameRegex(rp) | Self::PathRegex(rp) => rp.find(candidate), + Self::NameTokens(tp) | Self::PathTokens(tp) => tp.find(candidate), Self::Composite(cp) => cp.search_string(candidate), _ => None, } @@ -197,16 +193,12 @@ impl Pattern { /// (it accepts everything) pub fn is_empty(&self) -> bool { match self { - Self::NameExact(ep) => ep.is_empty(), - Self::NameFuzzy(fp) => fp.is_empty(), - Self::NameRegex(rp) => rp.is_empty(), - Self::NameTokens(tp) => tp.is_empty(), - Self::PathExact(ep) => ep.is_empty(), - Self::PathFuzzy(fp) => fp.is_empty(), - Self::PathRegex(rp) => rp.is_empty(), - Self::PathTokens(tp) => tp.is_empty(), + Self::NameExact(ep) | Self::PathExact(ep) => ep.is_empty(), Self::ContentExact(ep) => ep.is_empty(), + Self::NameFuzzy(fp) | Self::PathFuzzy(fp) => fp.is_empty(), + Self::NameRegex(rp) | Self::PathRegex(rp) => rp.is_empty(), Self::ContentRegex(rp) => rp.is_empty(), + Self::NameTokens(tp) | Self::PathTokens(tp) => tp.is_empty(), Self::Composite(cp) => cp.is_empty(), Self::None => true, } |