Macros Crystal lang:在宏中,向调用节点添加参数的最佳实践

Macros Crystal lang:在宏中,向调用节点添加参数的最佳实践,macros,crystal-lang,Macros,Crystal Lang,类型为,但ArrayTerral没有任何插入元素的方法。所以我的问题是如何在优雅的调用中添加参数 我只知道这种愚蠢的方式: macro method_missing(call) Delegator.{{call.name}}("a new parameter", {{call.args}}) {{call.block}} end 但是它很难处理#命名为_arg,尤其是#splat_index(尽管它是块的成员,这里也有同样的问题) 是否存在更好的方法,或者它是编译器开发人员的待办事项功

类型为,但ArrayTerral没有任何插入元素的方法。所以我的问题是如何在优雅的调用中添加参数

我只知道这种愚蠢的方式:

macro method_missing(call)
    Delegator.{{call.name}}("a new parameter", {{call.args}}) {{call.block}}
end
但是它很难处理
#命名为_arg
,尤其是
#splat_index
(尽管它是
块的成员,这里也有同样的问题)


是否存在更好的方法,或者它是编译器开发人员的待办事项功能?

ArrayLiteral
实际上可以修改,它提供了几种添加元素的方法:
#抱歉,我错过了一些东西:-)