dire che ho avuto l'API di seguito:Mappa con opzionale Scartare a Swift
func paths() -> [String?] {
return ["test", nil, "Two"]
}
E stavo usando questo in un metodo in cui avevo bisogno [String]
, quindi ho dovuto scartare utilizzando la semplice funzione map
. Attualmente sto facendo:
func cleanPaths() -> [String] {
return paths.map({$0 as! String})
}
Qui, il cast forzato causerà un errore. Quindi, tecnicamente, ho bisogno di scartare le stringhe nell'array paths
. Sto avendo qualche problema a fare questo e sembra stia ottenendo errori stupidi. Qualcuno può aiutarmi qui?
Complimenti per scavare questa funzione dalla trincea delle funzioni di ordine superiore non documentati di Swift ! –
@ZoffDino - Il merito dovrebbe essere di Airspeed Velocity: http://airspeedvelocity.net/2015/06/23/protocol-extensions-and-the-death-of-the-pipe-forward-operator/ che per primo ha puntato questo per me. –
Ho giocato con Swift per 9 mesi e ancora non sono riuscito a trovare un elenco completo delle funzioni di ordine superiore nella lingua. Apple ha molto da recuperare su questo fronte. –