У меня есть несколько быстрых расширений, которые я хочу реализовать через проекты.Быстрые расширения, которые применяются только при их импорте
Я бы хотел избежать загрязнения категории, хотя, если эти расширения не запрашиваются.
Можно ли записать их так, что они применяются только тогда, когда я сделал определенный импорт, как:
import MySwiftExtensions
// Use custom extensions
let x = [1,3,5,7].average()
let y = [1,3,5,7].firstWhere { $0 > 3 }
let z = "campervan".make1337()
Я мог бы написать их как статические методы, обернутые в одном классе буквы (например: ø.average([1,3,5,7])
, например lodash), чтобы достичь того же, но иногда вы получаете гораздо более сжатое использование из методов экземпляра.
Вы пробовали поместить расширения в отдельную структуру и импортировать по мере необходимости? –