Let's say I'm defining some cases to match, where I care only about verifying an argument:

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

where the function signature is:

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

How can I return the whole matched CallProperty object? I could create a new one, but that's a bit ugly. Is there some way to reference the original in place of xxx?

有帮助吗?

解决方案

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

You can also do this btw:

case xxx @ CallProperty(`someConstant`, args) => xxx

其他提示

Is this what you are looking for?

case c @ CallProperty(name, args) if name == someConstant => c
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top