Rust 锈蚀类型和#x2B;一生?

Rust 锈蚀类型和#x2B;一生?,rust,Rust,有一种特质可以做到这一点: pub trait Device<'a> { type RxToken: RxToken + 'a; type TxToken: TxToken + 'a; pub trait Device?让我们看一个例子: trait SayHello { fn say_hello(&self); } pub trait Device<'a> { type MyType : SayHello + 'a; } 这

有一种特质可以做到这一点:

pub trait Device<'a> {
    type RxToken: RxToken + 'a;
    type TxToken: TxToken + 'a;
pub trait Device

让我们看一个例子:

trait SayHello {
    fn say_hello(&self);
}

pub trait Device<'a> {
    type MyType : SayHello + 'a;
}

这里,
Device2
MyType
没有生存期要求-它只需要满足
SayHello

这样的约束意味着关联类型
RxToken
的具体类型必须以生存期为边界。trait
RxToken
可能根本没有生命周期约束(甚至可能不需要它们)。此外,关联的类型
RxToken
不限于有生存期限制的类型(例如
和'a type
),具有更长生存期的类型或拥有的类型
类型
(因为拥有的类型满足每个生存期)也被限定。
trait SayHello {
    fn say_hello(&self);
}

pub trait Device2<'a> {
    type MyType : SayHello;
}