0

假设我正在定义一些匹配的情况,我只关心验证一个参数:

BytecodeChains.partial {
    case CallProperty(name, args) if name == someConstant => xxx
} ....

其中函数签名是:

BytecodeChains.partial[A] (f: PartialFunction[AbstractOp, A]): ...

如何返回整个匹配的CallProperty对象?我可以创建一个新的,但这有点难看。有什么方法可以参考原件代替xxx吗?

4

2 回答 2

8
case xxx @ CallProperty(name, args) if name == someConstant => xxx

你也可以这样做:

case xxx @ CallProperty(`someConstant`, args) => xxx
于 2011-11-26T19:57:13.583 回答
4

这是你想要的?

case c @ CallProperty(name, args) if name == someConstant => c
于 2011-11-26T19:57:25.143 回答