diff options
Diffstat (limited to 'vendor/bstr/src/unicode/whitespace.rs')
-rw-r--r-- | vendor/bstr/src/unicode/whitespace.rs | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/vendor/bstr/src/unicode/whitespace.rs b/vendor/bstr/src/unicode/whitespace.rs index b5eff300e..bf1f47c8e 100644 --- a/vendor/bstr/src/unicode/whitespace.rs +++ b/vendor/bstr/src/unicode/whitespace.rs @@ -1,4 +1,4 @@ -use regex_automata::DFA; +use regex_automata::{dfa::Automaton, Anchored, Input}; use crate::unicode::fsm::{ whitespace_anchored_fwd::WHITESPACE_ANCHORED_FWD, @@ -7,10 +7,18 @@ use crate::unicode::fsm::{ /// Return the first position of a non-whitespace character. pub fn whitespace_len_fwd(slice: &[u8]) -> usize { - WHITESPACE_ANCHORED_FWD.find(slice).unwrap_or(0) + let input = Input::new(slice).anchored(Anchored::Yes); + WHITESPACE_ANCHORED_FWD + .try_search_fwd(&input) + .unwrap() + .map_or(0, |hm| hm.offset()) } /// Return the last position of a non-whitespace character. pub fn whitespace_len_rev(slice: &[u8]) -> usize { - WHITESPACE_ANCHORED_REV.rfind(slice).unwrap_or(slice.len()) + let input = Input::new(slice).anchored(Anchored::Yes); + WHITESPACE_ANCHORED_REV + .try_search_rev(&input) + .unwrap() + .map_or(slice.len(), |hm| hm.offset()) } |