Need help with a Custom empty? function

Please don’t paste huge iex dumps. Just explain your problem and requirements.

Quick prototype:

defmodule Something do
  def decimal_zero(), do: Decimal.new(0.0)

  def empty?(nil), do: true

  def empty?(%Decimal{} = d) do
    Decimal.cmp(d, decimal_zero()) == :eq  
  end

  def empty?(list) when is_list(list) do
    Enum.any?(list, &(not empty?(&1))
  end
end

You can extend this to tuples and maps if you need support for those.