Ни один тип для «Значения» не может удовлетворять как «Значение == Any», так и «Значение == String».
В используемой нами библиотеке есть псевдоним типа, который определяется как:
public typealias Parameters = [String: Any]
Для удобства мы
extension Parameters where Key: String, Value: StringProtocol {
public var queryString: String {
self.map { "\($0)=\($1)" }.joined(separator: "&")
}
}
Раньше это работало в Swift 5.6, но не в Swift 5.7. Сообщение:
«Ни один тип для «Значения» не может удовлетворять одновременно «Значение == Any» и «Значение == String»
Как это можно реорганизовать, чтобы у нас все еще были хорошие расширения, гдеValue
являетсяStringProtocol
?