summaryrefslogtreecommitdiff
path: root/test/files/run/macro-impl-rename-context/Impls_Macros_1.scala
blob: 537f1db8c634d4a7d83ca6fefe8090d56bde74fa (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import scala.reflect.macros.{Context => Ctx}

object Impls {
  def foo(unconventionalName: Ctx)(x: unconventionalName.Expr[Int]) = {
    import unconventionalName.universe._
    val body = Block(
      Apply(Select(Ident(definitions.PredefModule), newTermName("println")), List(Literal(Constant("invoking foo...")))),
      Literal(Constant(())))
    unconventionalName.Expr[Unit](body)
  }
}

object Macros {
  def foo(x: Int) = macro Impls.foo
}