繁体   English   中英

如何实现任何可变性的特征?

[英]How to implement a trait for any mutability?

可变性是特征中的通用参数吗? 我想为一个类型的可变和不可变变量实现一个特性,而不必复制和粘贴impl块。

trait Foo<T> {…}

impl<T> Foo for *const T {…}
impl<T> Foo for *mut T {…same thing again…}

一厢情愿的伪代码:

trait Foo<T> {…}

impl<T, Mutability> Foo for *Mutability T {…}

可变性是特征中的通用参数吗?

没有。^ _ ^

这里有一些关于此事的详细讨论( InternalsReddit )。

我认为一般人都认识到目前的状态并不理想,但目前也不是非常严格的限制。 人们关注的是如何实施以及各种方法的合理性。 有些人想知道更高级的类型(HKTs)是否可以解决问题,如果它们被添加到Rust中。

也可以看看:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM