Current section

Files

Jump to
ex_cldr_units lib cldr unit inspect.ex
Raw

lib/cldr/unit/inspect.ex

defmodule Cldr.Unit.Inspect do
@moduledoc false
# def format(name, %Ratio{numerator: 0, denominator: _}, usage, format_options) do
# do_format(name, 0, usage, format_options)
# end
#
# def format(name, %Ratio{numerator: numerator, denominator: 1}, usage, format_options) do
# do_format(name, numerator, usage, format_options)
# end
#
# def format(name, %Ratio{} = value, usage, format_options) do
# do_format(name, "Ratio.new(#{value.numerator}, #{value.denominator})", usage, format_options)
# end
def format(name, value, usage, format_options) do
do_format(name, value, usage, format_options)
end
def do_format(name, value, :default, []) do
"Cldr.Unit.new!(#{inspect(name)}, #{format_value(value)})"
end
def do_format(name, value, :default, format_options) do
options = "format_options: #{inspect(format_options)}"
"Cldr.Unit.new!(#{inspect(name)}, #{format_value(value)}, #{options})"
end
def do_format(name, value, usage, []) do
options = "usage: #{inspect(usage)}"
"Cldr.Unit.new!(#{inspect(name)}, #{format_value(value)}, #{options})"
end
def do_format(name, value, usage, format_options) do
options = "usage: #{inspect(usage)}, format_options: #{inspect(format_options)}"
"Cldr.Unit.new!(#{inspect(name)}, #{format_value(value)}, #{options})"
end
defp format_value(%Decimal{} = value) do
value
|> to_string()
|> inspect()
end
defp format_value(value) do
to_string(value)
end
end