blob: 4cd759a60d88a3c65f6f5b7bbe5565156799e6b8 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
/* __ *\
** ________ ___ / / ___ Scala API **
** / __/ __// _ | / / / _ | (c) 2003, LAMP/EPFL **
** __\ \/ /__/ __ |/ /__/ __ | **
** /____/\___/_/ |_/____/_/ | | **
** |/ **
** $Id$
\* */
package scala.collection.mutable;
/** This is a simple wrapper class for <code>scala.collection.mutable.Set</code>.
* It is most useful for assembling customized set abstractions
* dynamically using object composition and forwarding.
*
* @author Matthias Zenger
* @version 1.1, 09/05/2004
*/
trait SetProxy[A] extends Set[A] with scala.collection.SetProxy[A] {
def self: Set[A];
override def update(elem: A, included: Boolean): Unit = self(elem) = included;
def +=(elem: A): Unit = self += elem;
override def ++=(that: Iterable[A]): Unit = self ++= that;
override def ++=(it: Iterator[A]): Unit = self ++= it;
override def incl(elems: A*): Unit = self ++= elems;
def -=(elem: A): Unit = self -= elem;
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);
def clear: Unit = self.clear;
override def filter(p: A => Boolean): Unit = self.filter(p);
override def <<(cmd: Message[A]): Unit = self << cmd;
override def clone(): Set[A] = new SetProxy[A] { def self = SetProxy.this.self.clone() }
}
|