Stream.dedup_by
You're seeing just the function
dedup_by
, go back to Stream module for more information.
Specs
dedup_by(Enumerable.t(), (element() -> term())) :: Enumerable.t()
Creates a stream that only emits elements if the result of calling fun
on the element is
different from the (stored) result of calling fun
on the last emitted element.
Examples
iex> Stream.dedup_by([{1, :x}, {2, :y}, {2, :z}, {1, :x}], fn {x, _} -> x end) |> Enum.to_list()
[{1, :x}, {2, :y}, {1, :x}]