Skip to content

Commit baf9bd7

Browse files
committed
Inline Map.from_keys/2
1 parent 84d317c commit baf9bd7

File tree

2 files changed

+4
-3
lines changed

2 files changed

+4
-3
lines changed

lib/elixir/lib/map.ex

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,8 @@ defmodule Map do
128128
@doc """
129129
Builds a map from the given `keys` and the fixed `value`.
130130
131+
Inlined by the compiler.
132+
131133
## Examples
132134
133135
iex> Map.from_keys([1, 2, 3], :number)
@@ -136,9 +138,7 @@ defmodule Map do
136138
"""
137139
@doc since: "1.14.0"
138140
@spec from_keys([key], value) :: map
139-
def from_keys(keys, value) do
140-
:maps.from_keys(keys, value)
141-
end
141+
defdelegate from_keys(keys, value), to: :maps
142142

143143
@doc """
144144
Returns all keys from `map`.

lib/elixir/src/elixir_rewrite.erl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,7 @@ inline(Mod, Fun, Arity) -> inner_inline(ex_to_erl, Mod, Fun, Arity).
146146
?inline(?list, to_integer, 2, erlang, list_to_integer);
147147
?inline(?list, to_tuple, 1, erlang, list_to_tuple);
148148

149+
?inline(?map, from_keys, 2, maps, from_keys);
149150
?inline(?map, intersect, 2, maps, intersect);
150151
?inline(?map, keys, 1, maps, keys);
151152
?inline(?map, merge, 2, maps, merge);

0 commit comments

Comments
 (0)