模板中的 Nim 可变参数?

Nim varargs in template?

如何在模板中使用 varargs(我知道可以使用宏来实现,但我想知道是否也可以使用模板)?下面的例子不能编译

template require*(modules: varargs[untyped]) =
  for m in modules:
    from m import nil

require options, strutils

但这是有效的

template require*(a) =
  from a import nil
template require*(a, b) =
  from a import nil
  from b import nil

require options, strutils

varargs 在模板中工作* 但您的用例需要宏,模板只是代码替换,以下代码不是有效的 nim 代码:​​

for m in [options, strutils]:
  from m import nil

*varargs 在模板中的用法示例:

template require(modules: varargs[untyped]) =
  import modules
  
require options, strutils