Skip to content

Commit fb5fae3

Browse files
committed
Fixup compiler warnings
1 parent bbb48a7 commit fb5fae3

1 file changed

Lines changed: 11 additions & 7 deletions

File tree

lib/parser/serial.ex

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -97,14 +97,18 @@ defmodule DateTimeParser.Parser.Serial do
9797
)
9898
end
9999

100-
defp time_from_serial(0.0), do: {0, 0, 0}
101-
102100
defp time_from_serial(serial_time) do
103-
{hours, min_fraction} = split_float(serial_time * 24)
104-
{minutes, sec_fraction} = split_float(min_fraction * 60)
105-
{seconds, _microseconds} = split_float(sec_fraction * 60)
101+
case serial_time do
102+
zero when zero in [+0.0, -0.0] ->
103+
{0, 0, 0}
104+
105+
serial_time ->
106+
{hours, min_fraction} = split_float(serial_time * 24)
107+
{minutes, sec_fraction} = split_float(min_fraction * 60)
108+
{seconds, _microseconds} = split_float(sec_fraction * 60)
106109

107-
{hours, minutes, seconds}
110+
{hours, minutes, seconds}
111+
end
108112
end
109113

110114
defp date_from_serial(serial_date) do
@@ -123,7 +127,7 @@ defmodule DateTimeParser.Parser.Serial do
123127
defp split_float(float) when float < 0 do
124128
whole = abs(float) |> Float.floor() |> round()
125129
fraction = 1 - (abs(float) - whole)
126-
fraction = if fraction == 1.0, do: 0.0, else: fraction
130+
fraction = if fraction == 1.0, do: +0.0, else: fraction
127131
{whole * -1, fraction}
128132
end
129133

0 commit comments

Comments
 (0)