aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/package.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2013-05-22 16:38:04 +0200
committerMartin Odersky <odersky@gmail.com>2013-05-22 16:44:28 +0200
commit0ebdcc7ed2d2024d93ba7d24b88187d4c502eb4b (patch)
treee76375245f790a2606a70cda6c69c6bd70ca49a4 /src/dotty/tools/package.scala
parent62fe4b6ec456b4878a642aa7e98886b0c9d4c9dd (diff)
downloaddotty-0ebdcc7ed2d2024d93ba7d24b88187d4c502eb4b.tar.gz
dotty-0ebdcc7ed2d2024d93ba7d24b88187d4c502eb4b.tar.bz2
dotty-0ebdcc7ed2d2024d93ba7d24b88187d4c502eb4b.zip
Added desugaring.
With various other small changes.
Diffstat (limited to 'src/dotty/tools/package.scala')
-rw-r--r--src/dotty/tools/package.scala15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/dotty/tools/package.scala b/src/dotty/tools/package.scala
index 021e7360b..f23b62862 100644
--- a/src/dotty/tools/package.scala
+++ b/src/dotty/tools/package.scala
@@ -3,5 +3,18 @@ package dotty
package object tools {
type FatalError = scala.reflect.internal.FatalError
val FatalError = scala.reflect.internal.FatalError
- val ListOfNil = List(Nil)
+
+ val ListOfNil = Nil :: Nil
+
+ /** True if two lists have the same length. Since calling length on linear sequences
+ * is O(n), it is an inadvisable way to test length equality.
+ */
+ final def sameLength[T](xs: List[T], ys: List[T]): Boolean = xs match {
+ case _ :: xs1 =>
+ ys match {
+ case _ :: ys1 => sameLength(xs1, ys1)
+ case _ => false
+ }
+ case _ => ys.isEmpty
+ }
}