У меня есть этот фильтр и карта
let listItems = openingHours.lazy.filter {
$0.openingHourOpen.day.lowercased() == day.lowercased()
}
.compactMap { createListItem(thisDay: $0, day: day, isFirstDay: &firstDay) }
Поскольку я использую lazy, для этого требуется использование self.createList, которое я не считаю необходимым. Когда я создаю список перехвата для неизвестных, я получаю, что «несобственные» могут применяться только к классам и типам протоколов, привязанных к классам, а не к «информации»
Так что моя идея - обернуть его без не уверен в синтаксисе.
let listItems: [ListItem] = withoutActuallyEscaping((OpeningHour) -> ListItem) { type in
openingHours.lazy.filter { $0.openingHourOpen.day.lowercased() == day.lowercased() }
.compactMap{ createListItem(thisDay: $0, day: day, isFirstDay: &firstDay)}
}
, но я получаю ошибку конфликтов определения с предыдущим значением и типом выражения '(, () throws -> _) throws -> _' is неоднозначный без контекста