Unpack v0.1.3 Unpack View Source

Unpack lets you “unpack” values from a nested map safely.

Link to this section Summary

Functions

Traverses any nested map or struct (data), in order of keys list (arg2), to return a value. Returns nil for bad keys, unloaded associations or empty maps

Link to this section Functions

Link to this function get(data, arg2) View Source
get(map(), [any()]) :: any() | nil

Traverses any nested map or struct (data), in order of keys list (arg2), to return a value. Returns nil for bad keys, unloaded associations or empty maps.

Examples

iex> struct = %{player: %{game: %{id: "game-id"}}}
iex> Unpack.get(struct, [:player, :game, :id])
"game-id"

iex> struct = %{player: %Ecto.Association.NotLoaded{}}
iex> Unpack.get(struct, [:player, :game, :id])
nil