【问题标题】:Escape Parentheses in sweet.js Macro Namesweet.js 宏名称中的转义括号
【发布时间】:2015-01-20 00:41:30
【问题描述】:

我想写一个扩展宏,但为了这样做,我需要重写函数的调用方式:

someFn(..>someArray)

需要输出的内容:

someFn.apply(null, someArray)

我已尝试创建一个名为 ( 的宏。我已经看到您不需要转义宏主体中的括号,并且括号用于转义多令牌名称......但到目前为止,我在尝试使用该名称创建宏时遇到了问题。

使用该名称,解析带有Error: Line 16: Unexpected end of input 的宏时会出错。是否有我可以使用的转义字符,或者这是需要在 Github 中报告的内容?

【问题讨论】:

    标签: javascript macros sweet.js


    【解决方案1】:

    所以( 不是可用于宏的有效令牌。这是因为在发生任何宏扩展之前必须平衡所有分隔符(这是 sweet.js 的阅读器部分)。因此,错误提示输入意外结束,读者仍在寻找结束分隔符。

    我不认为我们现在有一个很好的方法来覆盖函数调用。我们对如何解决这个问题有一些想法(请参阅一个有点相关的问题here),但还没有实现。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多