【发布时间】:2018-01-25 17:31:38
【问题描述】:
我有一个宏,它获取模块名称作为参数,我想在该模块上调用一个函数来获取一些数据,以便生成quote 块。
例子:
defmacro my_macro(module) do
data = apply(module, :config, [])
# do something with data to generate the quote do end
end
显然,这不起作用,因为引用了参数值。我可以在引用块中获取数据并采取相应的行动,但这会将整个逻辑放在使用我的宏的模块中,这很脏。我想注入尽可能少的代码。
【问题讨论】:
标签: macros elixir metaprogramming