Skip to content

Commit

Permalink
Fix float token interpretation
Browse files Browse the repository at this point in the history
  • Loading branch information
rrrene committed Feb 2, 2020
1 parent e832b5f commit b2fc5a1
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ defmodule Credo.Check.Consistency.SpaceAroundOperators.SpaceHelper do
def usually_no_space_before?({:number, _, _}, {_, _, :-}, _), do: false
def usually_no_space_before?({:int, _, _}, {_, _, :-}, _), do: false
def usually_no_space_before?({:float, _, _}, {_, _, :-}, _), do: false
def usually_no_space_before?({:flt, _, _}, {_, _, :-}, _), do: false
def usually_no_space_before?(_, {_, _, :-}, _), do: true
def usually_no_space_before?(_, {_, _, :..}, _), do: true
def usually_no_space_before?(_, _, _), do: false
Expand All @@ -27,6 +28,7 @@ defmodule Credo.Check.Consistency.SpaceAroundOperators.SpaceHelper do
def usually_no_space_after?({:"(", _}, {:dual_op, _, :-}, {:number, _, _}), do: true
def usually_no_space_after?({:"(", _}, {:dual_op, _, :-}, {:int, _, _}), do: true
def usually_no_space_after?({:"(", _}, {:dual_op, _, :-}, {:float, _, _}), do: true
def usually_no_space_after?({:"(", _}, {:dual_op, _, :-}, {:flt, _, _}), do: true
def usually_no_space_after?({_, _, :^}, {_, _, :-}, _), do: true
def usually_no_space_after?({_, _, :=}, {_, _, :-}, _), do: true
def usually_no_space_after?({_, _, :..}, {_, _, :-}, _), do: true
Expand Down
16 changes: 16 additions & 0 deletions lib/credo/check/readability/large_numbers.ex
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,11 @@ defmodule Credo.Check.Readability.LargeNumbers do
collect_number_tokens(t, acc, min_number)
end

# tuple for Elixir >= 1.10.0
defp number_token({:flt, {_, _, number}, _} = tuple, min_number) when min_number < number do
tuple
end

# tuple for Elixir >= 1.6.0
defp number_token({:int, {_, _, number}, _} = tuple, min_number) when min_number < number do
tuple
Expand All @@ -69,6 +74,17 @@ defmodule Credo.Check.Readability.LargeNumbers do
acc
end

# tuple for Elixir >= 1.10.0
defp find_issues(
[{:flt, {line_no, column1, number} = location, _} | t],
acc,
issue_meta
) do
acc = acc ++ find_issue(line_no, column1, location, number, issue_meta)

find_issues(t, acc, issue_meta)
end

# tuple for Elixir >= 1.6.0
defp find_issues(
[{:int, {line_no, column1, number} = location, _} | t],
Expand Down

0 comments on commit b2fc5a1

Please sign in to comment.