Genérico Swift Dictionary Extension para filtrado nulo
Estoy buscando un tipo seguro, versión genérica deesta respuesta.
Esta es la firma del método que estoy buscando:
extension Dictionary where Value == Optional<T> {
func filterNil() -> <Key, T>
}
¿Hay alguna forma de expresar esto en Swift 3?
Editar:
Mi motivación para crear un diccionario con valores opcionales es que necesito algo como esto:
struct User {
var mail: String?
var name: String?
func marshaled() -> [String: Any] {
return [
"mail": mail,
"name": name
].filterNil()
}
}
Prefiero el diccionario literal a crear un diccionario vacío y llenar los valores manualmente.