-1
私は、次の機能があります。私はこの関数を呼び出し、パラメータを渡ししようとしていますスウィフトプロトコル:[Y]の予想される引数の型に `[X]」型の値を変換できません
public enum RemoteRecordChange<T: ParsedProtocol> {
case insert(T)
case update(T)
case delete(RemoteRecordID)
}
func processRemoteChanges<T: ParsedProtocol>(_ changes: [RemoteRecordChange<T>], completion: @escaping() ->()) {
// To Something
}
を:
関数を呼び出すときに、私はエラーを取得していますpublic struct Friend: ParsedProtocol {
// Has some properties
}
let friend = Friend()
// populate properties friend.username = "aUserName", etc.
:
self.processRemoteChanges([friend])
はコンパイルエラー:
`Cannot convert value of type '[Friend]` to expected argument type of `[RemoteRecordChange<..>]'
私が間違っていることがわかりません。必要に応じて、より多くのコードを提供することができます。
'[RemoteRecordChange]が欲しく、それに' [Fr 'iend]'。 'RemoteRecordChange 'は列挙型で、 'Friend'は' ParsedProtocol'を実装する構造体です。 –
zneak