pub struct SimdScanner { /* private fields */ }Expand description
SIMD-accelerated pattern scanner
Implementations§
Source§impl SimdScanner
impl SimdScanner
Sourcepub fn new(pattern: Vec<u8>, mask: Vec<bool>) -> Self
pub fn new(pattern: Vec<u8>, mask: Vec<bool>) -> Self
create a new SIMD scanner from pattern bytes and mask
Sourcepub fn scan(&self, data: &[u8]) -> Vec<usize>
pub fn scan(&self, data: &[u8]) -> Vec<usize>
scan data for pattern, returns offsets of all matches
Sourcepub fn scan_first(&self, data: &[u8]) -> Option<usize>
pub fn scan_first(&self, data: &[u8]) -> Option<usize>
scan data for first match only
Auto Trait Implementations§
impl Freeze for SimdScanner
impl RefUnwindSafe for SimdScanner
impl Send for SimdScanner
impl Sync for SimdScanner
impl Unpin for SimdScanner
impl UnwindSafe for SimdScanner
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more