Basics
This check is disabled by default.
Learn how to enable it via .credo.exs.
This check has a base priority of normal and works with any version of Elixir.
Explanation
Enum.reduce([], fn x, acc -> [f(x) | acc] end) is just Enum.map/2.
# bad ā manually building a reversed list
Enum.reduce(items, [], fn item, acc ->
[transform(item) | acc]
end)
# bad ā O(n²) list concatenation
Enum.reduce(items, [], fn item, acc ->
acc ++ [transform(item)]
end)
# good
Enum.map(items, &transform/1)Check-Specific Parameters
There are no specific parameters for this check.
General Parameters
Like with all checks, general params can be applied.
Parameters can be configured via the .credo.exs config file.