Util.fields_info(): convert field names to string

This commit is contained in:
Helmut Merz 2026-06-05 06:31:59 +02:00
parent 8b590695bb
commit 5123c1b3e8
2 changed files with 5 additions and 7 deletions

View file

@ -1,9 +1,9 @@
defmodule Scopes.Util do defmodule Scopes.Util do
defmacro fields_info(fields) do defmacro fields_info(fields) do
names = for {f, _, _} <- fields do f end names = for f <- fields do Macro.to_string(f) end
quote do quote bind_quoted: [names: names, fields: fields] do
Enum.zip(unquote(names), unquote(fields)) Enum.zip(names, fields) |> Map.new
end end
end end
end end

View file

@ -6,10 +6,8 @@ defmodule Scopes.UtilTest do
describe "info:" do describe "info:" do
test "fields" do test "fields" do
a = 17 {a, b, c} = {17, 22, 42}
b = 22 assert %{"a" => 17, "b" => 22, "c" => 42} = Util.fields_info([a, b, c])
c = 42
assert [a: 17, b: 22, c: 42] = Util.fields_info([a, b, c])
end end
end end
end end