summaryrefslogtreecommitdiff
path: root/src/reflect/scala/reflect/internal/Variance.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2013-01-01 15:57:49 -0800
committerPaul Phillips <paulp@improving.org>2013-01-09 12:11:13 -0800
commit882f8e640b034cc69b122ac221f75cbe0018e2c3 (patch)
treeae7f10d179dcc024836f5e2c0cdf264c2e5e84ef /src/reflect/scala/reflect/internal/Variance.scala
parent9be6d0513245d886be31eaabbc5e8ba356433dac (diff)
downloadscala-882f8e640b034cc69b122ac221f75cbe0018e2c3.tar.gz
scala-882f8e640b034cc69b122ac221f75cbe0018e2c3.tar.bz2
scala-882f8e640b034cc69b122ac221f75cbe0018e2c3.zip
Eliminated VariantTypeMap.
Made variance tracking a constructor parameter to TypeMap. Eliminated more variance duplication.
Diffstat (limited to 'src/reflect/scala/reflect/internal/Variance.scala')
-rw-r--r--src/reflect/scala/reflect/internal/Variance.scala5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/reflect/scala/reflect/internal/Variance.scala b/src/reflect/scala/reflect/internal/Variance.scala
index f5b994d69e..007d56eb35 100644
--- a/src/reflect/scala/reflect/internal/Variance.scala
+++ b/src/reflect/scala/reflect/internal/Variance.scala
@@ -74,6 +74,11 @@ final class Variance private (val flags: Int) extends AnyVal {
}
object Variance {
+ implicit class SbtCompat(val v: Variance) {
+ def < (other: Int) = v.flags < other
+ def > (other: Int) = v.flags > other
+ }
+
def fold(variances: List[Variance]): Variance = (
if (variances.isEmpty) Bivariant
else variances reduceLeft (_ & _)