summaryrefslogtreecommitdiff
path: root/test/files/run/macro-impl-relaxed/Macros_1.scala
blob: af62646b4e062f848d86befb711e0653d47f7aa0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import language.experimental.macros
import scala.reflect.macros.Context

object Macros {
  def implUU(c: Context)(x: c.Tree): c.Tree = x
  def implTU(c: Context)(x: c.Expr[Int]): c.Tree = x.tree
  def implUT(c: Context)(x: c.Tree): c.Expr[Int] = c.Expr[Int](x)
  def implTT(c: Context)(x: c.Expr[Int]): c.Expr[Int] = x

  def fooUU(x: Int): Int = macro implUU
  def fooTU(x: Int): Int = macro implTU
  def fooUT(x: Int): Int = macro implUT
  def fooTT(x: Int): Int = macro implTT
}