Skip to main content

src/sparklinekit@internal@format.erl

-module(sparklinekit@internal@format).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/sparklinekit/internal/format.gleam").
-export([coord/1]).

-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.

?MODULEDOC(false).

-file("src/sparklinekit/internal/format.gleam", 33).
?DOC(false).
-spec clamp_coord(float()) -> float().
clamp_coord(Value) ->
    case Value > 1.0e6 of
        true ->
            1.0e6;

        false ->
            case Value < (+0.0 - 1.0e6) of
                true ->
                    +0.0 - 1.0e6;

                false ->
                    Value
            end
    end.

-file("src/sparklinekit/internal/format.gleam", 26).
?DOC(false).
-spec coord(float()) -> binary().
coord(Value) ->
    Safe = clamp_coord(Value),
    Scaled = Safe * 100.0,
    Rounded = erlang:float(erlang:round(Scaled)) / 100.0,
    gleam_stdlib:float_to_string(Rounded).