summaryrefslogtreecommitdiff
path: root/src/library/scala/reflect/makro/Context.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/library/scala/reflect/makro/Context.scala')
-rw-r--r--src/library/scala/reflect/makro/Context.scala15
1 files changed, 2 insertions, 13 deletions
diff --git a/src/library/scala/reflect/makro/Context.scala b/src/library/scala/reflect/makro/Context.scala
index b8fb0dcce5..b0e15fd572 100644
--- a/src/library/scala/reflect/makro/Context.scala
+++ b/src/library/scala/reflect/makro/Context.scala
@@ -28,17 +28,6 @@ trait Context extends Aliases
val prefix: Expr[PrefixType]
/** Alias to the underlying mirror's reify */
- def reify[T](expr: T): Expr[T] = macro Context.reify[T]
-}
-
-object Context {
- def reify[T](cc: Context{ type PrefixType = Context })(expr: cc.Expr[T]): cc.Expr[cc.prefix.value.Expr[T]] = {
- import cc.mirror._
- import scala.reflect.makro.internal._
- // [Eugene] how do I typecheck this without undergoing this tiresome (and, in general, incorrect) procedure?
- val prefix: Tree = Select(cc.prefix.tree, newTermName("mirror"))
- val prefixTpe = cc.typeCheck(TypeApply(Select(prefix, newTermName("asInstanceOf")), List(SingletonTypeTree(prefix)))).tpe
- prefix setType prefixTpe
- cc.Expr(cc.materializeExpr(prefix, expr.tree))
- }
+ // implementation is magically hardwired to `scala.reflect.reify.Taggers`
+ def reify[T](expr: T): Expr[T] = macro ???
}