Code.eval_quoted(opts_ast, Macro.Env.vars(__CALLER__),
file: __CALLER__.file,
line: __CALLER__.line
)
{a, opts} = Keyword.pop!(opts, :a)
{b, opts} = Keyword.pop!(opts, :b)
{c, opts} = Keyword.pop!(opts, :c)
{d, opts} = Keyword.pop!(opts, :d)
{e, opts} = Keyword.pop!(opts, :e)
quote do
fragment("TRUE_COST(?, ?, ?, ?, ?)", unquote(a), unquote(b), unquote(c), unquote(d), unquote(e))
end
end
Code.eval_quoted/3 нужен для того, чтобы он ast нормально у тебя в опциях обрабатывал.
Обсуждают сегодня