Is there a syntax or way in scala to access the whole matched structure in a case statement?

To clarify, if there was an "as" keyword, one could do this:

x match {
  case Y(z) as matched =>
    // do stuff both with "matched" and "z" here ...
  ...
}
有帮助吗?

解决方案

You should be able to use the @ syntax:

x match {
  case matched @ Y(z) =>
    // do stuff both with "matched" and "z" here ...
  ...
}

From here

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top