# `MonEx.Arrows`
[🔗](https://github.com/youroff/monex/blob/v0.2.1/lib/monex/arrows.ex#L1)

Infix shorthand operators for `MonEx.map/2` and `MonEx.flat_map/2`.

# `~>`

```elixir
@spec m(a, b) ~&gt; (a -&gt; c) :: m(c, b) when a: any(), b: any(), c: any()
```

Infix alias for `MonEx.map/2`.

## Example
    f = fn x -> x * 2 end

    some(5) ~> f == some(10)
    none()  ~> f == none()

# `~>>`

```elixir
@spec m(a, b) ~&gt;&gt; (a -&gt; m(c, d)) :: m(c, d)
when a: any(), b: any(), c: any(), d: any()
```

Infix alias for `MonEx.flat_map/2`.

## Example
    f = fn x -> ok(x * 2) end

    ok(5)        ~>> f == ok(10)
    error("Err") ~>> f == error("Err")

---

*Consult [api-reference.md](api-reference.md) for complete listing*
