blob: 9e167e61db74f005994bb4651d68f9dccb2880cf (
plain) (
tree)
|
|
import scala.language.experimental.macros
import scala.reflect.macros.blackbox.Context
object Macros {
implicit class Error(ctx: StringContext) {
def err(args: Any*): Unit = macro impl
}
def impl(c: Context)(args: c.Tree*): c.Tree = {
import c.universe._
val q"Macros.Error(scala.StringContext.apply($arg)).err()" = c.macroApplication
for (i <- 1 to 3) c.error(arg.pos.withPoint(arg.pos.point + i - 1), i.toString)
q"()"
}
}
|