У меня есть проект с двумя целями, где один файл Swift является членом обеих целей. Одна цель компилируется без ошибок, а другая показывает ошибки в вышеупомянутом файле.
Файл совсем простой. Это просто следующая структура:
struct Item : Codable
{
var id = UUID().uuidString
var name: String = ""
var amount: Double?
var unit: String?
var onList: Bool = false
var done: Bool = false
var store: String?
}
extension Item: Equatable
{
public static func ==(lhs: Item, rhs: Item) -> Bool
{
return
lhs.id == rhs.id &&
lhs.name == rhs.name &&
lhs.amount == rhs.amount &&
lhs.unit == rhs.unit &&
lhs.onList == rhs.onList &&
lhs.done == rhs.done &&
lhs.store == rhs.store
}
}
Я понятия не имею, где искать различия. Я проверил настройки сборки, обе цели установлены на «Swift 5» в «Swift Language Version».
Что еще я должен проверить?
Кортик
==
дляEquatable
. Если вы проверите все свои поля, вы можете позволить компилятору синтезировать их для вас, просто написав:extension Item: Equatable { }
Вот и все. - person Zaphod   schedule 31.03.2020