Useful (useful v0.2.0)
A Library of Useful
functions for building Elixir
Apps.
Link to this section Summary
Functions
atomize_map_keys/1
converts a Map
with different keys
to a map with just atom keys. Works recursively for nested maps.
Inspired by stackoverflow.com/questions/31990134
flatten_map/1
flattens a Map
of any depth
Inspired by: https://stackoverflow.com/questions/39401947/flatten-nested-map
Link to this section Functions
Link to this function
atomize_map_keys(map)
atomize_map_keys/1
converts a Map
with different keys
to a map with just atom keys. Works recursively for nested maps.
Inspired by stackoverflow.com/questions/31990134
Examples
iex> Useful.atomize_map_keys(%{"name" => "alex", id: 1})
%{id: 1, name: "alex"}
iex> Useful.atomize_map_keys(%{"name" => "alex", data: %{ "age" => 17}})
%{name: "alex", data: %{age: 17}}
Link to this function
flatten_map(map)
flatten_map/1
flattens a Map
of any depth
Inspired by: https://stackoverflow.com/questions/39401947/flatten-nested-map
Examples
iex> map = %{name: "alex", data: %{age: 17, height: 185}}
iex> Useful.flatten_map(map)
%{data__age: 17, data__height: 185, name: "alex"}