J'ai la structure suivante:
[nil,
%{attributes: %{updated_at: ~N[2017-09-21 08:34:11.899360]},
...]
Je veux supprimer les nils. Comment je fais ça? A tenté Enum.reduce/3
mais ça n'a pas marché.
Enum.filter/2
vient à la rescousse:
Enum.filter(list, & !is_nil(&1))
Si vous êtes certain qu'il ne peut pas y avoir false
atomes dans la liste (l'autre valeur de falsey possible dans Elixir,) le filtre peut être simplifié pour:
Enum.filter(list, & &1)
Aussi (crédits à @Dogbert) il y a une fonction de contrepartie Enum.reject/2
qui "renvoie des éléments de enumerable
pour lesquels la fonction fun
renvoie false
ou nil
."
Enum.reject(list, &is_nil/1)