已移除:一般類型投影
到目前為止,Scala 允許一般類型投影 T#A
,其中 T
是任意類型而 A
命名 T
的類型成員。
如果 T
是抽象類型(類別類型和類型別名沒問題),Scala 3 不允許這樣做。此變更的緣由是,不受限制的類型投影不健全。
此限制排除了組合子演算的類型層級編碼。
若要改寫使用抽象類型類型投影的程式碼,請考慮使用路徑依賴類型或隱含參數。
到目前為止,Scala 允許一般類型投影 T#A
,其中 T
是任意類型而 A
命名 T
的類型成員。
如果 T
是抽象類型(類別類型和類型別名沒問題),Scala 3 不允許這樣做。此變更的緣由是,不受限制的類型投影不健全。
此限制排除了組合子演算的類型層級編碼。
若要改寫使用抽象類型類型投影的程式碼,請考慮使用路徑依賴類型或隱含參數。