summaryrefslogblamecommitdiff
path: root/test/files/run/repl-term-macros.check
blob: f73abb5dc3b6ce1d0a962ae7e90441bcf82c2247 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11


                                           

                                                  





                                          

                                                                                   
 
                                   





                             

                                                                                     
 
                                     





                               

                                                                                                                   
 
                                                   




                                             
Type in expressions to have them evaluated.
Type :help for more information.

scala> import scala.reflect.macros.BlackboxContext
import scala.reflect.macros.BlackboxContext

scala> import language.experimental.macros
import language.experimental.macros

scala> 

scala> def impl1(c: BlackboxContext) = { import c.universe._; c.Expr[Unit](q"()") }
impl1: (c: scala.reflect.macros.BlackboxContext)c.Expr[Unit]

scala> def foo1: Unit = macro impl1
defined term macro foo1: Unit

scala> foo1

scala> 

scala> def impl2(c: BlackboxContext)() = { import c.universe._; c.Expr[Unit](q"()") }
impl2: (c: scala.reflect.macros.BlackboxContext)()c.Expr[Unit]

scala> def foo2(): Unit = macro impl2
defined term macro foo2: ()Unit

scala> foo2()

scala> 

scala> def impl3(c: BlackboxContext)(x: c.Expr[Int])(y: c.Expr[Int]) = { import c.universe._; c.Expr[Unit](q"()") }
impl3: (c: scala.reflect.macros.BlackboxContext)(x: c.Expr[Int])(y: c.Expr[Int])c.Expr[Unit]

scala> def foo3(x: Int)(y: Int): Unit = macro impl3
defined term macro foo3: (x: Int)(y: Int)Unit

scala> foo3(2)(3)

scala>