summaryrefslogtreecommitdiff
path: root/src/compiler/scala/reflect/internal/transform/Erasure.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/compiler/scala/reflect/internal/transform/Erasure.scala')
-rw-r--r--src/compiler/scala/reflect/internal/transform/Erasure.scala14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/compiler/scala/reflect/internal/transform/Erasure.scala b/src/compiler/scala/reflect/internal/transform/Erasure.scala
index 2cf171aad3..e87de8db80 100644
--- a/src/compiler/scala/reflect/internal/transform/Erasure.scala
+++ b/src/compiler/scala/reflect/internal/transform/Erasure.scala
@@ -74,7 +74,7 @@ trait Erasure {
def eraseNormalClassRef(pre: Type, clazz: Symbol): Type =
typeRef(apply(rebindInnerClass(pre, clazz)), clazz, List()) // #2585
- protected def eraseInlineClassRef(clazz: Symbol): Type =
+ protected def eraseDerivedValueClassRef(clazz: Symbol): Type =
scalaErasure(underlyingOfValueClass(clazz))
def apply(tp: Type): Type = tp match {
@@ -90,7 +90,7 @@ trait Erasure {
else if (sym == AnyClass || sym == AnyValClass || sym == SingletonClass || sym == NotNullClass) erasedTypeRef(ObjectClass)
else if (sym == UnitClass) erasedTypeRef(BoxedUnitClass)
else if (sym.isRefinementClass) apply(mergeParents(tp.parents))
- else if (sym.isInlineClass) eraseInlineClassRef(sym)
+ else if (sym.isDerivedValueClass) eraseDerivedValueClassRef(sym)
else if (sym.isClass) eraseNormalClassRef(pre, sym)
else apply(sym.info) // alias type or abstract type
case PolyType(tparams, restpe) =>
@@ -119,7 +119,7 @@ trait Erasure {
}
def applyInArray(tp: Type): Type = tp match {
- case TypeRef(pre, sym, args) if (sym.isInlineClass) => eraseNormalClassRef(pre, sym)
+ case TypeRef(pre, sym, args) if (sym.isDerivedValueClass) => eraseNormalClassRef(pre, sym)
case _ => apply(tp)
}
}
@@ -159,13 +159,13 @@ trait Erasure {
else javaErasure
/** This is used as the Scala erasure during the erasure phase itself
- * It differs from normal erasure in that value classes are erased to ErasedInlineTypes which
+ * It differs from normal erasure in that value classes are erased to ErasedValueTypes which
* are then later converted to the underlying parameter type in phase posterasure.
*/
def specialErasure(sym: Symbol)(tp: Type): Type =
if (sym != NoSymbol && sym.enclClass.isJavaDefined)
erasure(sym)(tp)
- else if (sym.isTerm && sym.owner.isInlineClass)
+ else if (sym.isTerm && sym.owner.isDerivedValueClass)
specialErasureAvoiding(sym.owner, tp)
else if (sym.isValue && sym.owner.isMethodWithExtension)
specialErasureAvoiding(sym.owner.owner, tp)
@@ -222,11 +222,11 @@ trait Erasure {
object scalaErasure extends ScalaErasureMap
/** This is used as the Scala erasure during the erasure phase itself
- * It differs from normal erasure in that value classes are erased to ErasedInlineTypes which
+ * It differs from normal erasure in that value classes are erased to ErasedValueTypes which
* are then later converted to the underlying parameter type in phase posterasure.
*/
object specialScalaErasure extends ScalaErasureMap {
- override def eraseInlineClassRef(clazz: Symbol): Type = ErasedInlineType(clazz)
+ override def eraseDerivedValueClassRef(clazz: Symbol): Type = ErasedValueType(clazz)
}
object javaErasure extends JavaErasureMap