【发布时间】:2018-12-10 20:43:55
【问题描述】:
我有一个特征,它只有一个要求,即方法 len(&self) -> usize 的存在。然后,它为该结构提供了几个新方法的实现。
trait MyTrait {
fn len(&self) -> usize;
// ... some new functions with implementations
}
我想在std::collections::LinkedList 上实现这个特性,它已经有一个具有该精确类型签名的方法。目前,我正在这样做:
impl<T> MyTrait for LinkedList<T> {
fn len(&self) -> usize {
self.len()
}
}
然后我可以在我的LinkedList 实例上使用MyTrait 定义的新方法。然而,感觉没有必要像这样重复方法的定义,因为类型签名是相同的。有没有办法在我的 trait 实现中省略 len 的重新定义?
【问题讨论】: