From 7b0f0a142bb526f4bd108a8c208ec9a8952398c9 Mon Sep 17 00:00:00 2001 From: Eugene Burmako Date: Mon, 4 Jun 2012 13:53:13 +0200 Subject: repairs the tests after the refactoring spree --- .../run/macro-reify-nested-a/Impls_Macros_1.scala | 30 ++++++++++++---------- 1 file changed, 16 insertions(+), 14 deletions(-) (limited to 'test/files/run/macro-reify-nested-a/Impls_Macros_1.scala') diff --git a/test/files/run/macro-reify-nested-a/Impls_Macros_1.scala b/test/files/run/macro-reify-nested-a/Impls_Macros_1.scala index 1ce8f44671..f9a08df90d 100644 --- a/test/files/run/macro-reify-nested-a/Impls_Macros_1.scala +++ b/test/files/run/macro-reify-nested-a/Impls_Macros_1.scala @@ -1,17 +1,19 @@ +import scala.reflect.runtime.universe._ +import scala.reflect.runtime.{universe => ru} import scala.reflect.makro.Context case class Utils[C <: Context]( c:C ) { - import c.mirror._ + import c.universe._ import c.{Tree=>_} - object removeDoubleReify extends c.mirror.Transformer { + object removeDoubleReify extends c.universe.Transformer { def apply( tree:Tree ) = transform(tree) override def transform(tree: Tree): Tree = { super.transform { tree match { - case Apply(TypeApply(Select(_this, termname), _), reified::Nil ) - if termname.toString == "factory" => c.unreifyTree(reified) - case Apply(Select(_this, termname), reified::Nil ) - if termname.toString == "factory" => c.unreifyTree(reified) + case Apply(TypeApply(Select(_this, termname), _), reification::Nil ) + if termname.toString == "factory" => c.unreifyTree(reification) + case Apply(Select(_this, termname), reification::Nil ) + if termname.toString == "factory" => c.unreifyTree(reification) case _ => tree } } @@ -19,25 +21,25 @@ case class Utils[C <: Context]( c:C ) { } } object QueryableMacros{ - def _helper[C <: Context,S:c.TypeTag]( c:C )( name:String, projection:c.mirror.Expr[_] ) = { - import c.mirror._ - val element_type = implicitly[c.TypeTag[S]].tpe - val foo = Expr[reflect.mirror.Expr[Queryable[S]]]( - c.reifyTree( c.reflectMirrorPrefix, c.typeCheck( + def _helper[C <: Context,S:c.TypeTag]( c:C )( name:String, projection:c.Expr[_] ) = { + import c.universe._ + val element_type = c.typeOf[S] + val foo = c.Expr[ru.Expr[Queryable[S]]]( + c.reifyTree( c.runtimeUniverse, EmptyTree, c.typeCheck( Utils[c.type](c).removeDoubleReify( Apply(Select(c.prefix.tree, newTermName( name )), List( projection.tree )) ).asInstanceOf[Tree] ))) - c.reify{ Queryable.factory[S]( foo.eval )} + c.reify{ Queryable.factory[S]( foo.splice )} } def map[T:c.TypeTag, S:c.TypeTag] (c: scala.reflect.makro.Context) - (projection: c.mirror.Expr[T => S]): c.mirror.Expr[Queryable[S]] = _helper[c.type,S]( c )( "_map", projection ) + (projection: c.Expr[T => S]): c.Expr[Queryable[S]] = _helper[c.type,S]( c )( "_map", projection ) } class Queryable[T]{ def _map[S]( projection: T => S ) : Queryable[S] = ??? def map[S]( projection: T => S ) : Queryable[S] = macro QueryableMacros.map[T,S] } object Queryable{ - def factory[S]( projection:scala.reflect.mirror.Expr[Queryable[S]] ) : Queryable[S] = null + def factory[S]( projection:ru.Expr[Queryable[S]] ) : Queryable[S] = null } \ No newline at end of file -- cgit v1.2.3