0

私はそのようなジェネリックを利用しようとしています。

protocol Y { ... }
protocol X: Y { ... }

protocol A: Collection where Element == Y { ... }
protocol B: A where Element == X { ... }

の定義でエラーが発生していますB:

同型制約タイプ 'X' は、必要なプロトコル 'Y' に準拠していません

しかし、X準拠していYます...

DataPoint私はそのような仲介関連型を使用してみました

protocol A: Collection where Element == DataPoint { 
    associatedtype DataPoint: Y
    ... 
}
protocol B: A where DataPoint == X { ... }

しかし、同じエラーが発生します。Swift 4 でこの種のことを達成することは可能ですか、それとも 2 つの完全に別個のプロトコルを作成する必要がありますか?

4

0 に答える 0