Generics 为什么拆分类型只返回&;str,即使该模式对&;str和char?

Generics 为什么拆分类型只返回&;str,即使该模式对&;str和char?,generics,rust,iterator,traits,associated-types,Generics,Rust,Iterator,Traits,Associated Types,我很难理解Split类型在锈蚀中是如何工作的 Split是方法返回的类型。该类型有一个迭代器的实现 该类型有一个迭代器的实现{ 类型Item=&'a str; fn next(&mut self)->选项迭代器的输出类型不是它的类型参数,而是它的项关联类型。您将迭代器(P)的泛型参数与其项关联类型混淆。 impl <'a, P> Iterator for Split<'a, P> { type Item = &'a str; fn next(&am

我很难理解
Split
类型在锈蚀中是如何工作的

Split
是方法返回的类型。该类型有一个
迭代器的实现
该类型有一个
迭代器的实现{
类型Item=&'a str;

fn next(&mut self)->选项迭代器的输出类型不是它的类型参数,而是它的
关联类型。您将
迭代器(
P
)的泛型参数与其
关联类型混淆。
impl <'a, P> Iterator for Split<'a, P> {
    type Item = &'a str;
    fn next(&mut self) -> Option<&'a str> { ... }
}