This module is not about Monad or Maybe... it is just a shortcut
over the pattern {:ok, value}
.
With Deal, you can write code like that:
Deal.with! do
f(1)
g()
h()
end
instead of:
with
{:ok, a} <- f(1),
{:ok, b} <- g(a),
{:ok, c} <- h(b),
do: {:ok, c}
You can checkout the test file for more examples.
The package can be installed
by adding deal
to your list of dependencies in mix.exs
:
def deps do
[
{:deal, "~> 1.0.0"}
]
end
Documentation can be generated with ExDoc and published on HexDocs. Once published, the docs can be found at https://hexdocs.pm/deal.