macro fields_info(), to be used for logging

This commit is contained in:
Helmut Merz 2026-06-04 21:05:50 +02:00
parent cdff646437
commit 8b590695bb
2 changed files with 24 additions and 0 deletions

9
lib/util.ex Normal file
View file

@ -0,0 +1,9 @@
defmodule Scopes.Util do
defmacro fields_info(fields) do
names = for {f, _, _} <- fields do f end
quote do
Enum.zip(unquote(names), unquote(fields))
end
end
end

15
test/util_test.exs Normal file
View file

@ -0,0 +1,15 @@
defmodule Scopes.UtilTest do
use ExUnit.Case, async: true
alias Scopes.Util
require Scopes.Util
describe "info:" do
test "fields" do
a = 17
b = 22
c = 42
assert [a: 17, b: 22, c: 42] = Util.fields_info([a, b, c])
end
end
end