diff options
author | Jason Zaugg <jzaugg@gmail.com> | 2013-11-22 03:17:53 -0800 |
---|---|---|
committer | Jason Zaugg <jzaugg@gmail.com> | 2013-11-22 03:17:53 -0800 |
commit | 33eba97dcdffd1248721faf42e573e73cb80b04c (patch) | |
tree | 24513c62953c1a39c3dd6e414ff1bcfb9dccd8fc /test/files | |
parent | 5710c58b405e107ec29283d846acafd0cda13dcf (diff) | |
parent | d6ef83a2d75292e44e165a438594c035ed1b1330 (diff) | |
download | scala-33eba97dcdffd1248721faf42e573e73cb80b04c.tar.gz scala-33eba97dcdffd1248721faf42e573e73cb80b04c.tar.bz2 scala-33eba97dcdffd1248721faf42e573e73cb80b04c.zip |
Merge pull request #3138 from densh/pr/fresh-name-extractor
Refactor out fresh name prefix extraction logic
Diffstat (limited to 'test/files')
-rw-r--r-- | test/files/scalacheck/quasiquotes/QuasiquoteProperties.scala | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/test/files/scalacheck/quasiquotes/QuasiquoteProperties.scala b/test/files/scalacheck/quasiquotes/QuasiquoteProperties.scala index 88a677b913..b331c4b6b6 100644 --- a/test/files/scalacheck/quasiquotes/QuasiquoteProperties.scala +++ b/test/files/scalacheck/quasiquotes/QuasiquoteProperties.scala @@ -18,13 +18,12 @@ trait Helpers { object simplify extends Transformer { object SimplifiedName { - def unapply[T <: Name](name: T): Option[T] = - name.toString.split("\\$").toSeq match { - case first :+ last if scala.util.Try(last.toInt).isSuccess && first.nonEmpty => - val value = first.mkString("", "$", "$") - Some((if (name.isTermName) TermName(value) else TypeName(value)).asInstanceOf[T]) - case _ => None - } + val st = scala.reflect.runtime.universe.asInstanceOf[scala.reflect.internal.SymbolTable] + val FreshName = new st.FreshNameExtractor + def unapply[T <: Name](name: T): Option[T] = name.asInstanceOf[st.Name] match { + case FreshName(prefix) => + Some((if (name.isTermName) TermName(prefix) else TypeName(prefix)).asInstanceOf[T]) + } } override def transform(tree: Tree): Tree = tree match { |