aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/core/OrderingConstraint.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/dotty/tools/dotc/core/OrderingConstraint.scala')
-rw-r--r--src/dotty/tools/dotc/core/OrderingConstraint.scala19
1 files changed, 18 insertions, 1 deletions
diff --git a/src/dotty/tools/dotc/core/OrderingConstraint.scala b/src/dotty/tools/dotc/core/OrderingConstraint.scala
index 7e27ee628..e818862cb 100644
--- a/src/dotty/tools/dotc/core/OrderingConstraint.scala
+++ b/src/dotty/tools/dotc/core/OrderingConstraint.scala
@@ -129,7 +129,6 @@ class OrderingConstraint(private val boundsMap: ParamBounds,
type This = OrderingConstraint
-
// ----------- Basic indices --------------------------------------------------
/** The number of type parameters in the given entry array */
@@ -576,4 +575,22 @@ class OrderingConstraint(private val boundsMap: ParamBounds,
}
Text.lines(List(header, uninstVarsText, constrainedText, boundsText, orderingText, ")"))
}
+
+ override def toString: String = {
+ def entryText(tp: Type): String = tp match {
+ case tp: TypeBounds => tp.toString
+ case _ =>" := " + tp
+ }
+ val constrainedText =
+ " constrained types = " + domainPolys.mkString("\n")
+ val boundsText =
+ " bounds = " + {
+ val assocs =
+ for (param <- domainParams)
+ yield
+ param.binder.paramNames(param.paramNum) + ": " + entryText(entry(param))
+ assocs.mkString("\n")
+ }
+ constrainedText + "\n" + boundsText
+ }
}