It would be useful to have a function that uses the Access protocol to 
delete elements within nested data structures. This is similar in concept 
to Kernel.pop_in/2 <https://hexdocs.pm/elixir/Kernel.html#pop_in/2>, but 
Kernel.delete_in/2 should just return the data structure without the 
specified element, whereas Kernel.pop_in/2 returns a tuple whose first 
element is the removed value and second element is the data structure 
without the specified element. The return structure of 
Kernel.delete_in/2 would allow it to be more easily chained than 
Kernel.pop_in/2.

Expected behavior
Kernel.delete_in(%{foo: "bar", baz: "qux"}, [:foo])
#=> %{baz: "qux"}

Kernel.delete_in(%{foo: %{bar: "baz", qux: "quux"}}, [:foo, :qux])
#=> %{foo: %{bar: "baz"}}


-- 
You received this message because you are subscribed to the Google Groups 
"elixir-lang-core" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to elixir-lang-core+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elixir-lang-core/85369f10-5234-4c75-a282-cd644e380a0b%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to