我想定义一个可以转换的甜蜜宏
{ a, b } # o
进入
{ o.a, o.b }
我目前的尝试是
macro (#) {
case infix { { $prop:ident (,) ... } | _ $o } => {
return #{ { $prop: $o.$prop (,) ... } }
}
}
然而,这给了我
SyntaxError: [patterns] Ellipses level does not match in the template
我怀疑我并不真正了解它是如何...
工作的,并且可能需要以某种方式循环每个值$prop
并为每个对象构建语法对象并以某种方式将它们连接起来,但我不知道如何做到这一点。