我正在尝试编写一个规则来捕获使用 sweet.js 的函数调用的表达式和参数。
这是我当前的宏(不匹配):
macro foo {
rule {
( $fn:expr ($args ...) )
} => {
$fn("stuff", $args ...) // pushes "stuff" to the beginning of the arguments
}
}
以及一些输入和预期输出:
foo(somefn("bar"))
应该输出:
somefn("stuff", "bar")
和
foo(console.log("bar"))
应该输出:
console.log("stuff", "bar")
任何帮助将不胜感激。