monex v0.1.3 MonEx.Result

Result module provides Result type with utility functions.

Summary

Types

t()

Result type. ok(x) or error(err) unwraps into {:ok, x} or {:error, err}

Functions

Filters collection or results so that only errors left

Filters collection or results so that only oks left

Returns value x if argument is ok(x), second argument z if error

Returns true if argument is error(), false if ok()

Returns true if argument is ok(), false if error()

Returns value x if argument is ok(x), raises err if error(err)

Types

t()
t() :: {:ok, term} | {:error, term}

Result type. ok(x) or error(err) unwraps into {:ok, x} or {:error, err}

Functions

collect_error(results)
collect_error([t]) :: [term]

Filters collection or results so that only errors left

collect_ok(results)
collect_ok([t]) :: [term]

Filters collection or results so that only oks left

fallback(arg, z)
fallback(t, term) :: term

Returns value x if argument is ok(x), second argument z if error.

is_error(x)
is_error(t) :: boolean

Returns true if argument is error(), false if ok()

is_ok(arg)
is_ok(t) :: boolean

Returns true if argument is ok(), false if error()

retry_rec(n, delay, lambda)
unwrap(arg)
unwrap(t) :: term

Returns value x if argument is ok(x), raises err if error(err)

Macros

error(err)
ok(res)
retry(opts \\ [], list)