DarkMatter.Lists.flatten_atom_or_improper_tree_list

You're seeing just the function flatten_atom_or_improper_tree_list, go back to DarkMatter.Lists module for more information.
Link to this function

flatten_atom_or_improper_tree_list(val)

View Source

Specs

flatten_atom_or_improper_tree_list(atom_or_improper_tree_list()) :: [atom()]

Flattens common tree shaped keyword lists into a single list

Examples

iex> flatten_atom_or_improper_tree_list([])
[]

iex> flatten_atom_or_improper_tree_list(:atom)
[:atom]

iex> flatten_atom_or_improper_tree_list([:atom_list])
[:atom_list]

iex> flatten_atom_or_improper_tree_list({:tuple, :atom})
[:tuple, :atom]

iex> flatten_atom_or_improper_tree_list([tuple: :list])
[:tuple, :list]

iex> flatten_atom_or_improper_tree_list([tuple: [nested: :atom]])
[:tuple, :nested, :atom]

iex> flatten_atom_or_improper_tree_list([tuple: [nested: [:list, :atom]]])
[:tuple, :nested, :list, :atom]

iex> flatten_atom_or_improper_tree_list([:atom, tuple: [nested: [:nested2, nested3: [:nested4]]]])
[:atom, :tuple, :nested, :nested2, :nested3, :nested4]