我拼命地解決以下幾個:部分應用型參數
trait Access[Res[_]] { def access[C]: Res[C] }
trait CList[C1, A] extends Access[CList[_, A]] // ?!
def test[C1, C2, A](c: CList[C1, A]): CList[C2, A] = c.access[C2]
scalac只是說:"error: illegal cyclic reference involving trait CList"
。我怎樣才能編譯?
謝謝,這看起來好一點。此外,因爲在我的真實情況下CList的類型參數有上限,有一個專用的特質Partial2並不真正有用(我需要爲邊界等添加類型參數) – 2011-04-03 15:25:18
此外,如果您的代碼中經常使用類型lambdas,考慮下面的編譯器插件: https://github.com/non/kind-projector – 2017-11-12 10:49:23