blob: c5319c559c4d813885b7aecaf936baa5c3ea9b8b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
|
import scala.language.experimental.macros
import scala.reflect.macros.blackbox.Context
object Macros {
def defaultZeroCase(pf: PartialFunction[Int, Int]): PartialFunction[Int, Int] = macro impl
def impl(c: Context)(pf: c.Tree) = { import c.universe._
val q"{ case ..$cases }" = pf
q"{ case ..$cases case _ => 0 }"
}
}
|