Skip to content

Commit dadb49f

Browse files
committed
Inline more code in Enum
1 parent 4cdd76b commit dadb49f

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

lib/elixir/lib/enum.ex

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -881,7 +881,11 @@ defmodule Enum do
881881
drop_list(enumerable, amount)
882882
end
883883

884-
def drop(enumerable, amount) when is_integer(amount) and amount >= 0 do
884+
def drop(enumerable, 0) do
885+
to_list(enumerable)
886+
end
887+
888+
def drop(enumerable, amount) when is_integer(amount) and amount > 0 do
885889
{result, _} = reduce(enumerable, {[], amount}, R.drop())
886890
if is_list(result), do: :lists.reverse(result), else: []
887891
end
@@ -2918,9 +2922,9 @@ defmodule Enum do
29182922

29192923
defp slice_range(enumerable, first, -1, step) when first >= 0 do
29202924
if step == 1 do
2921-
Enum.drop(enumerable, first)
2925+
drop(enumerable, first)
29222926
else
2923-
enumerable |> Enum.drop(first) |> take_every_list(step - 1)
2927+
enumerable |> drop(first) |> take_every_list(step - 1)
29242928
end
29252929
end
29262930

0 commit comments

Comments
 (0)