Access Elixir maps and structs, protected from `nil`
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
config
lib
test
.formatter.exs
.gitignore
.travis.yml
CHANGELOG.md
LICENSE
README.md
mix.exs
mix.lock

README.md

Maybe

Hex.pm Build Status

Access nested Elixir maps and structs, protected from nil. Somewhat similar to "Optionals" in Apple Swift.

import Maybe

info = %{city: %{name: "Portland"}}
maybe(info.city.name)
# => "Portland"

map = %{}
maybe(map.city.name)
# => nil

See the original forum post for more an explanation of the problem this package solves.

Installation

Add maybe to your list of dependencies in mix.exs:

def deps do
  [
    {:maybe, "~> 1.0.0"}
  ]
end

See the documentation for more details.