blob: 6cb374d9ba1b7238b23c6d94ec69578108cf605f (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
import scala.reflect.macros.{Context => Ctx}
trait Exprs {
self: Universe =>
class Expr[T]
}
trait Reifiers {
self: Universe =>
}
trait Universe extends Exprs with Reifiers {
def reify[T](expr: T): Expr[T] = macro Impls.reify[T]
}
object Impls {
def reify[T](cc: Ctx{ type PrefixType = Universe })(expr: cc.Expr[T]): cc.Expr[cc.prefix.value.Expr[T]] = ???
}
|