diff options
Diffstat (limited to 'src/library/scala/collection/mutable/SetProxy.scala')
-rw-r--r-- | src/library/scala/collection/mutable/SetProxy.scala | 48 |
1 files changed, 11 insertions, 37 deletions
diff --git a/src/library/scala/collection/mutable/SetProxy.scala b/src/library/scala/collection/mutable/SetProxy.scala index 1c86472259..0b032816eb 100644 --- a/src/library/scala/collection/mutable/SetProxy.scala +++ b/src/library/scala/collection/mutable/SetProxy.scala @@ -1,4 +1,3 @@ -/* TODO: Reintegrate /* __ *\ ** ________ ___ / / ___ Scala API ** ** / __/ __// _ | / / / _ | (c) 2003-2009, LAMP/EPFL ** @@ -9,9 +8,9 @@ // $Id$ - package scala.collection.mutable +import generic.SetProxyTemplate /** This is a simple wrapper class for <a href="Set.html" * target="contentFrame"><code>scala.collection.mutable.Set</code></a>. @@ -21,38 +20,13 @@ package scala.collection.mutable * @author Matthias Zenger * @version 1.1, 09/05/2004 */ -trait SetProxy[A] extends Set[A] with collection.SetProxy[A] { - - def self: Set[A] - - override def update(elem: A, included: Boolean): Unit = self(elem) = included - - def +=(elem: A): this.type = { self += elem; this } - - override def ++=(that: Iterable[A]): this.type = { self ++= that; this } - - override def ++=(it: Iterator[A]): this.type = { self ++= it; this } - - override def incl(elems: A*): Unit = self ++= elems - - def -=(elem: A): this.type = { self -= elem; this } - - override def --=(that: Iterable[A]): Unit = self --= that - - override def --=(it: Iterator[A]): Unit = self --= it - - override def excl(elems: A*): Unit = self --= elems - - override def intersect(that: Set[A]): Unit = self.intersect(that) - - override def clear(): Unit = self.clear - - override def retain(p: A => Boolean): Unit = self.retain(p) - - override def <<(cmd: Message[A]): Unit = self << cmd - - override def clone(): Set[A] = new SetProxy[A] { - def self = SetProxy.this.self.clone() - } -} -*/ +trait SetProxy[A] extends mutable.Set[A] with SetProxyTemplate[A, mutable.Set[A]] +{ + override def thisCollection = this + override def empty = new SetProxy[A] { val self = SetProxy.this.self.empty } + override def + (elem: A) = { self += elem ; this } + override def - (elem: A) = { self -= elem ; this } + + def +=(elem: A) = { self += elem; this } + def -=(elem: A) = { self -= elem; this } +}
\ No newline at end of file |