3
我有一個函數f
,其中有兩個相同類型的參數,並且函數g
需要兩個不同類型的參數,但兩種類型都必須存儲相同的值,因此g
可以調用f
,其中包含的值參數爲f
。我目前實施的是這樣的:如何強制執行兩個相關的特徵類型參數的平等?
fn f<T>(a: T, b: T) {}
trait A {
type A;
fn getter(&self) -> Self::A;
}
fn g<T: A, U: A>(a: T, b: U) {
f(a.getter(), b.getter())
}
我有什麼要添加到的g
定義,使其工作?
參見:http://stackoverflow.com/q/29345708/155423; http://stackoverflow.com/q/27893501/155423。 – Shepmaster