Optimize multi-char string patterns

This commit is contained in:
Yotam Ofek 2025-03-15 14:14:25 +00:00
parent aa95b9648a
commit bfe536342f
2 changed files with 4 additions and 4 deletions

View file

@ -282,4 +282,4 @@ macro_rules! impl_slice_contains {
};
}
impl_slice_contains!(u16, u32, u64, i16, i32, i64, f32, f64, usize, isize);
impl_slice_contains!(u16, u32, u64, i16, i32, i64, f32, f64, usize, isize, char);

View file

@ -644,21 +644,21 @@ where
impl<const N: usize> MultiCharEq for [char; N] {
#[inline]
fn matches(&mut self, c: char) -> bool {
self.iter().any(|&m| m == c)
self.contains(&c)
}
}
impl<const N: usize> MultiCharEq for &[char; N] {
#[inline]
fn matches(&mut self, c: char) -> bool {
self.iter().any(|&m| m == c)
self.contains(&c)
}
}
impl MultiCharEq for &[char] {
#[inline]
fn matches(&mut self, c: char) -> bool {
self.iter().any(|&m| m == c)
self.contains(&c)
}
}