我想编写一个扩展宏,但为了做到这一点,我需要覆盖函数的调用方式,如下所示:
someFn(..>someArray)
需要输出:
someFn.apply(null, someArray)
我尝试过创建一个名为(
的宏。我已经看到你不需要在宏体中转义括号,并且括号用于转义多个令牌名称......但到目前为止,我在尝试创建具有该名称的宏时遇到了问题。
使用该名称,使用Error: Line 16: Unexpected end of input
解析宏时出错。是否有可以使用的转义字符,或者这是否需要在Github中报告?
答案 0 :(得分:0)
因此(
不是可用于宏的有效令牌。这是因为在任何宏扩展发生之前必须平衡所有分隔符(这是sweet.js的读者部分)。因此,错误说意外结束输入,读者仍然在寻找结束分隔符。
我不认为我们现在有一个很好的覆盖函数调用的方法。我们有一些关于如何解决这个问题的想法(参见一个有点相关的问题here),但还没有实现。