Extensão genérica do dicionário Swift para filtragem nula
Estou procurando um tipo de versão segura e genérica deesta resposta.
Esta é a assinatura do método que estou procurando:
extension Dictionary where Value == Optional<T> {
func filterNil() -> <Key, T>
}
Existe alguma maneira de expressar isso no Swift 3?
Editar:
Minha motivação para criar um dicionário com valores opcionais é que preciso de algo assim:
struct User {
var mail: String?
var name: String?
func marshaled() -> [String: Any] {
return [
"mail": mail,
"name": name
].filterNil()
}
}
Eu prefiro o literal do dicionário a criar um dicionário vazio e preencher os valores manualmente.