Needlework View Source

Needlework brings additional operators to Elixir that allows you to "thread" results of your functions into other function calls. Basically extending the Kernel.|>/2 operator.

Just use Needlework in your modules and thread away!

Example:

defmodule MyModule do
use Needlework

  @spec foo(func :: fun()) :: list()
  def foo(func) do
    func
    ~> Enum.map([1, 2, 3])
  end
end

Check the full documentation

Inspired by an awesome dash

Installation

The package can be installed by adding needlework to your list of dependencies in mix.exs:

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