private func setMaster(_ masterId: Int, to ship: Ship) {
guard let mShip = masterShips.binarySearch(comparator: { $0.id ==? masterId }),
- let masterShip = store?.object(of: MasterShip.entity, with: mShip.objectID) else {
+ let masterShip = store?.exchange(mShip) else {
return Logger.shared.log("Can not convert to current moc object masterShip")
}
let newItems: [SlotItem] = convertedSlotItems
.filter { $0 != 0 && $0 != -1 }
- .flatMap { item in
+ .compactMap { item in
guard let found = self.slotItems.binarySearch(comparator: { $0.id ==? item }),
- let slotItem = store.object(of: SlotItem.entity, with: found.objectID) else {
+ let slotItem = store.exchange(found) else {
let maxV = convertedSlotItems.last
if maxV != nil, maxV! < item {
return
}
guard let found = slotItems.binarySearch(comparator: { $0.id ==? exSlotItem }),
- let ex = store?.object(of: SlotItem.entity, with: found.objectID) else {
+ let ex = store?.exchange(found) else {
return Logger.shared.log("Can not convert to current moc object")
}