An Elixir macro for easily piping arguments at any position.
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.
config
lib
test
.gitignore
.travis.yml
README.md
mix.exs
mix.lock

README.md

PipeHere

help maintain this lib

An Elixir macro for easily piping arguments at any position.

Usage

import PipeHere

The pipe_here macro lets you specify the argument position while piping values by using the _ placeholder.

For example:

pipe_here( 2 |> x(1, _, 3) )

# expands to

x(1, 2, 3)

The pipe_here macro can also be used at the end of a pipe:

2 |> x(1, _, 3) |> pipe_here

Note that while you can do stuff like:

a |> b(1, _) |> c |> d.(2, _, 3) |> pipe_here

every member of the pipe can at most have just one _ placeholder.

Installation

Available in Hex, the package can be installed as:

  1. Add pipe_here to your list of dependencies in mix.exs:
def deps do
  [{:pipe_here, "~> 1.0.0"}]
end

Is it any good?

Yes

マクロス Makurosu

[Elixir macros,] The things I do for beautiful code ― George Martin, Game of Thrones

#myelixirstatus #FridayLiterally