diff options
author | Martin Odersky <odersky@gmail.com> | 2009-09-25 16:20:13 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2009-09-25 16:20:13 +0000 |
commit | 4a727f3b01d0fa27ef51f7dba472116e021e3445 (patch) | |
tree | c9ab55ea7fe6051455271b23e9fbfc2f313015c0 /src/library/scala/collection/SetProxyLike.scala | |
parent | e31f18094dfba97c80871869a037172ff2c9c1c2 (diff) | |
download | scala-4a727f3b01d0fa27ef51f7dba472116e021e3445.tar.gz scala-4a727f3b01d0fa27ef51f7dba472116e021e3445.tar.bz2 scala-4a727f3b01d0fa27ef51f7dba472116e021e3445.zip |
Collections refactoring.
Diffstat (limited to 'src/library/scala/collection/SetProxyLike.scala')
-rw-r--r-- | src/library/scala/collection/SetProxyLike.scala | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/src/library/scala/collection/SetProxyLike.scala b/src/library/scala/collection/SetProxyLike.scala new file mode 100644 index 0000000000..b4bb67e876 --- /dev/null +++ b/src/library/scala/collection/SetProxyLike.scala @@ -0,0 +1,37 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2003-2009, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + + +package scala.collection + +import generic._ + +// Methods could be printed by cat SetLike.scala | egrep '^ (override )?def' + +/** This trait implements a proxy for sets. It forwards + * all calls to a different set. + * + * @author Martin Odersky + * @version 2.8 + */ +trait SetProxyLike[A, +This <: SetLike[A, This] with Set[A]] extends SetLike[A, This] with IterableProxyLike[A, This] +{ + // def empty: This + // def + (elem: A): This + // def - (elem: A): This + override def contains(elem: A): Boolean = self.contains(elem) + override def isEmpty: Boolean = self.isEmpty + override def apply(elem: A): Boolean = self.apply(elem) + override def intersect(that: Set[A]) = self.intersect(that) + override def &(that: Set[A]): This = self.&(that) + override def union(that: Set[A]): This = self.union(that) + override def | (that: Set[A]): This = self.|(that) + override def diff(that: Set[A]): This = self.diff(that) + override def &~(that: Set[A]): This = self.&~(that) + override def subsetOf(that: Set[A]): Boolean = self.subsetOf(that) +} |