aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/TypeApplications.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2014-12-10 18:53:45 +0100
committerMartin Odersky <odersky@gmail.com>2014-12-10 18:53:45 +0100
commit176d677258051fd1eef1d1bf26575919cab03530 (patch)
tree77b485229b9c682e1437a3672b89f4802ffa1d8c /src/dotty/tools/dotc/core/TypeApplications.scala
parentdb48496502eb1d86f54365b5a815e45a52f4819d (diff)
downloaddotty-176d677258051fd1eef1d1bf26575919cab03530.tar.gz
dotty-176d677258051fd1eef1d1bf26575919cab03530.tar.bz2
dotty-176d677258051fd1eef1d1bf26575919cab03530.zip
Converted some TypeBounds pattern matches to TypeAlias matches.
Replace all case TypeBounds(lo, hi) if lo eq hi => patterns with case TypeAlias(alias) =>
Diffstat (limited to 'src/dotty/tools/dotc/core/TypeApplications.scala')
-rw-r--r--src/dotty/tools/dotc/core/TypeApplications.scala6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/dotty/tools/dotc/core/TypeApplications.scala b/src/dotty/tools/dotc/core/TypeApplications.scala
index d00b018c8..c51092429 100644
--- a/src/dotty/tools/dotc/core/TypeApplications.scala
+++ b/src/dotty/tools/dotc/core/TypeApplications.scala
@@ -62,7 +62,7 @@ class TypeApplications(val self: Type) extends AnyVal {
case tp: RefinedType =>
val tparams = tp.parent.typeParams
tp.refinedInfo match {
- case TypeBounds(lo, hi) if lo eq hi => tparams.filterNot(_.name == tp.refinedName)
+ case rinfo: TypeAlias => tparams.filterNot(_.name == tp.refinedName)
case _ => tparams
}
case tp: SingletonType =>
@@ -353,9 +353,9 @@ class TypeApplications(val self: Type) extends AnyVal {
* for a contravariant type-parameter becomes L.
*/
final def argInfo(tparam: Symbol, interpolate: Boolean = true)(implicit ctx: Context): Type = self match {
+ case self: TypeAlias => self.alias
case TypeBounds(lo, hi) =>
- if (lo eq hi) hi
- else if (interpolate) {
+ if (interpolate) {
val v = tparam.variance
if (v > 0 && (lo isRef defn.NothingClass)) hi
else if (v < 0 && (hi isRef defn.AnyClass)) lo