Я пытаюсь получить доступ к массиву структур, используя свойства get / set
Каждая структура TransactionRecord имеет местоположение, и для каждого местоположения есть массив транзакций. Каждая транзакция имеет тип TransactionRecord
Вот мой код:
struct TransactionRecord {
var transactionId: String
var transactionType: String
}
struct TransactionPackage{
var location: String
var transactions: [TransactionRecord]
}
var data = TransactionPackage(location: "", transactions: []) {
didSet {
if oldValue == nil || data == nil {
tableView.reloadData()
}
}
}
var transaction: TransactionPackage {
get {
var transactions = [TransactionRecord]()
if data.transactions.count > 1 {
for transaction in data.transactions.last ?? [TransactionRecord] {
transactions.append(transaction)
}
}
return TransactionPackage(location: data.location, transactions: transactions)
}
set {
data = [[newValue.location], newValue.transactions]
}
}
Я получаю несколько ошибок:
онлайн:
для транзакции в data.transactions.last ?? [TransactionRecord] {
Я получаю ошибку:
Невозможно преобразовать значение типа '[TransactionRecord] .Type' в ожидаемый тип аргумента 'TransactionRecord'
на линии:
data = [[newValue.location], newValue.transactions]
Я получаю ошибку:
Невозможно присвоить значение типа «[Любой]» типу «TransactionPackage»
Могу ли я получить помощь?