Trait std::str::pattern::DoubleEndedSearcher
source · pub trait DoubleEndedSearcher<'a>: ReverseSearcher<'a> { }
🔬This is a nightly-only experimental API. (
pattern
#27721)Expand description
一个标记 trait,表示 ReverseSearcher
可用于 DoubleEndedIterator
实现。
为此,Searcher
和 ReverseSearcher
的 impl 需要遵循以下条件:
next()
的所有结果必须与next_back()
的结果相反 (顺序相反)。next()
和next_back()
需要表现为一个值范围的两端,即它们不能作为 “walk past each other”。
Examples
char::Searcher
是 DoubleEndedSearcher
,因为搜索 char
只需要一次查看一个,从两端的行为相同。
(&str)::Searcher
不是 DoubleEndedSearcher
,因为 haystack "aaa"
中的模式 "aa"
匹配为 "[aa]a"
或 "a[aa]"
,具体取决于从哪一侧搜索。