我正在尝试使用Sweet.js
制作第一个自定义JS语法我正在尝试使用其online playground使用不同的语法。
到目前为止,此简化版本对我有用:
@stateless
此文件成功编译为:
syntax test = function (ctx) {
let exp = ctx.expand('expr').value;
return #`(function (exp) { return exp; }(${exp}))`
};
var a = 1
var b = 2
test !(a > b)
现在,如果我尝试直接在函数中使用var a = 1;
var b = 2;
function (exp) {
return exp;
}(!(a > b));
,则会收到错误消息:${exp}
Error: Not implemented yet [object Object]
我希望能够获得:
syntax test = function (ctx) {
let exp = ctx.expand('expr').value;
return #`(function () { return ${exp}; }())`
};
var a = 1
var b = 2
test !(a > b) // Error: Not implemented yet [object Object]
..以避免在函数外部评估该条件。
我尝试了许多选项,但没有一个成功,这是可以实现的,还是我错过了一些东西?谢谢