aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/transform/ClassOf.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2016-02-18 17:26:08 +0100
committerMartin Odersky <odersky@gmail.com>2016-02-20 10:19:57 +0100
commitea2345d5725ca74504d5cb4b9e14e6d2e73da53c (patch)
treecca3196bf638bed80a78ba514336b82d542821de /src/dotty/tools/dotc/transform/ClassOf.scala
parent1f58090849a51787a4482a8d016a31f15f3c1b9b (diff)
downloaddotty-ea2345d5725ca74504d5cb4b9e14e6d2e73da53c.tar.gz
dotty-ea2345d5725ca74504d5cb4b9e14e6d2e73da53c.tar.bz2
dotty-ea2345d5725ca74504d5cb4b9e14e6d2e73da53c.zip
Simplify ClassOf phase
Make use of Definitions as the repository for standard symbols in Predef.
Diffstat (limited to 'src/dotty/tools/dotc/transform/ClassOf.scala')
-rw-r--r--src/dotty/tools/dotc/transform/ClassOf.scala9
1 files changed, 1 insertions, 8 deletions
diff --git a/src/dotty/tools/dotc/transform/ClassOf.scala b/src/dotty/tools/dotc/transform/ClassOf.scala
index f8f4991c8..e7b6977c7 100644
--- a/src/dotty/tools/dotc/transform/ClassOf.scala
+++ b/src/dotty/tools/dotc/transform/ClassOf.scala
@@ -21,15 +21,8 @@ class ClassOf extends MiniPhaseTransform {
override def phaseName: String = "classOf"
- private var classOfMethod: TermSymbol = _
-
- override def prepareForUnit(tree: tpd.Tree)(implicit ctx: Context): TreeTransform = {
- classOfMethod = defn.ScalaPredefModule.requiredMethod(nme.classOf)
- this
- }
-
override def transformTypeApply(tree: TypeApply)(implicit ctx: Context, info: TransformerInfo): Tree =
- if (tree.symbol eq classOfMethod) {
+ if (tree.symbol eq defn.Predef_classOf) {
val targ = tree.args.head.tpe
clsOf(targ).ensureConforms(tree.tpe).withPos(tree.pos)
}