summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpaltherr <paltherr@epfl.ch>2004-01-19 15:05:48 +0000
committerpaltherr <paltherr@epfl.ch>2004-01-19 15:05:48 +0000
commitd1624f0e5868c8e166c995b7f9b48e423d41735b (patch)
treeca10ae4cc1bf184b6326aeea9ef2503404287bce
parent1be73373facebd0a8c4d6b7ce6f9d5bab3e282a1 (diff)
downloadscala-d1624f0e5868c8e166c995b7f9b48e423d41735b.tar.gz
scala-d1624f0e5868c8e166c995b7f9b48e423d41735b.tar.bz2
scala-d1624f0e5868c8e166c995b7f9b48e423d41735b.zip
- Removed class Monitor
-rw-r--r--config/list/library.lst1
-rw-r--r--sources/scala/Monitor.scala21
-rw-r--r--sources/scala/collection/mutable/SynchronizedMap.scala2
-rw-r--r--sources/scala/collection/mutable/SynchronizedSet.scala2
-rw-r--r--sources/scala/concurrent/Channel.scala2
-rw-r--r--sources/scala/concurrent/Lock.scala2
-rw-r--r--sources/scala/concurrent/MailBox.scala4
-rw-r--r--sources/scala/concurrent/SyncChannel.scala4
-rw-r--r--sources/scala/concurrent/SyncVar.scala2
-rw-r--r--sources/scala/concurrent/pilib.scala4
10 files changed, 12 insertions, 32 deletions
diff --git a/config/list/library.lst b/config/list/library.lst
index 0b42bc06cd..1af8248500 100644
--- a/config/list/library.lst
+++ b/config/list/library.lst
@@ -34,7 +34,6 @@ Iterator.scala
List.scala
Long.java
MatchError.java
-Monitor.scala
Nil.scala
None.scala
Option.scala
diff --git a/sources/scala/Monitor.scala b/sources/scala/Monitor.scala
deleted file mode 100644
index 23bf869d68..0000000000
--- a/sources/scala/Monitor.scala
+++ /dev/null
@@ -1,21 +0,0 @@
-/* __ *\
-** ________ ___ / / ___ Scala API **
-** / __/ __// _ | / / / _ | (c) 2003, LAMP/EPFL **
-** __\ \/ /__/ __ |/ /__/ __ | **
-** /____/\___/_/ |_/____/_/ | | **
-** |/ **
-** $Id$
-\* */
-
-package scala;
-
-
-/** This trait can be used to mix in functionality for synchronizing
- * threads on this object.
- *
- * @author Martin Odersky
- * @version 1.0, 11/07/2003
- */
-trait Monitor {
- def await(def cond: boolean) = while (false == cond) { wait() }
-}
diff --git a/sources/scala/collection/mutable/SynchronizedMap.scala b/sources/scala/collection/mutable/SynchronizedMap.scala
index 28e9f1707c..09d3f1e8df 100644
--- a/sources/scala/collection/mutable/SynchronizedMap.scala
+++ b/sources/scala/collection/mutable/SynchronizedMap.scala
@@ -16,7 +16,7 @@ package scala.collection.mutable;
* @author Matthias Zenger
* @version 1.0, 08/07/2003
*/
-trait SynchronizedMap[A, B] extends scala.collection.mutable.Map[A, B] with Monitor {
+trait SynchronizedMap[A, B] extends scala.collection.mutable.Map[A, B] {
abstract override def size: Int = synchronized {
super.size;
diff --git a/sources/scala/collection/mutable/SynchronizedSet.scala b/sources/scala/collection/mutable/SynchronizedSet.scala
index 26a1c68fec..7f5f764387 100644
--- a/sources/scala/collection/mutable/SynchronizedSet.scala
+++ b/sources/scala/collection/mutable/SynchronizedSet.scala
@@ -16,7 +16,7 @@ package scala.collection.mutable;
* @author Matthias Zenger
* @version 1.0, 08/07/2003
*/
-trait SynchronizedSet[A] extends scala.collection.mutable.Set[A] with Monitor {
+trait SynchronizedSet[A] extends scala.collection.mutable.Set[A] {
abstract override def size: Int = synchronized {
super.size
diff --git a/sources/scala/concurrent/Channel.scala b/sources/scala/concurrent/Channel.scala
index 8c4faa1b61..f2e1286654 100644
--- a/sources/scala/concurrent/Channel.scala
+++ b/sources/scala/concurrent/Channel.scala
@@ -1,6 +1,6 @@
package scala.concurrent;
-class Channel[a] with Monitor {
+class Channel[a] {
class LinkedList[a] {
var elem: a = _;
var next: LinkedList[a] = null;
diff --git a/sources/scala/concurrent/Lock.scala b/sources/scala/concurrent/Lock.scala
index 8cb149b456..8a33912d8e 100644
--- a/sources/scala/concurrent/Lock.scala
+++ b/sources/scala/concurrent/Lock.scala
@@ -1,6 +1,6 @@
package scala.concurrent;
-class Lock with Monitor {
+class Lock {
var available = true;
def acquire = synchronized {
if (!available) wait();
diff --git a/sources/scala/concurrent/MailBox.scala b/sources/scala/concurrent/MailBox.scala
index d8c59c774b..6423ee88ba 100644
--- a/sources/scala/concurrent/MailBox.scala
+++ b/sources/scala/concurrent/MailBox.scala
@@ -1,11 +1,11 @@
package scala.concurrent;
//class MailBox with Monitor with LinkedListQueueCreator {
-class MailBox with Monitor with ListQueueCreator {
+class MailBox with ListQueueCreator {
type Message = AnyRef;
- private abstract class PreReceiver with Monitor {
+ private abstract class PreReceiver {
var msg: Message = null;
def isDefinedAt(msg: Message): boolean;
}
diff --git a/sources/scala/concurrent/SyncChannel.scala b/sources/scala/concurrent/SyncChannel.scala
index 34de081647..a984827024 100644
--- a/sources/scala/concurrent/SyncChannel.scala
+++ b/sources/scala/concurrent/SyncChannel.scala
@@ -1,10 +1,12 @@
package scala.concurrent;
-class SyncChannel[a] with Monitor {
+class SyncChannel[a] {
private var data: a = _;
private var reading = false;
private var writing = false;
+ def await(def cond: Boolean) = while (!cond) { wait() }
+
def write(x: a) = synchronized {
await(!writing);
data = x;
diff --git a/sources/scala/concurrent/SyncVar.scala b/sources/scala/concurrent/SyncVar.scala
index ead0d1635c..a05ef32f86 100644
--- a/sources/scala/concurrent/SyncVar.scala
+++ b/sources/scala/concurrent/SyncVar.scala
@@ -1,6 +1,6 @@
package scala.concurrent;
-class SyncVar[a] with Monitor {
+class SyncVar[a] {
private var isDefined: Boolean = false;
private var value: a = _;
def get = synchronized {
diff --git a/sources/scala/concurrent/pilib.scala b/sources/scala/concurrent/pilib.scala
index 724268fce8..635fa4ddbc 100644
--- a/sources/scala/concurrent/pilib.scala
+++ b/sources/scala/concurrent/pilib.scala
@@ -3,7 +3,7 @@ package scala.concurrent;
/**
* Library for using Pi-calculus concurrent primitives in Scala.
*/
-object pilib with Monitor {
+object pilib {
/////////////////////////// SPAWN //////////////////////////////
@@ -92,7 +92,7 @@ object pilib with Monitor {
//////////////////// SUM OF GUARDED PROCESSES //////////////////////
- case class Sum(gs: List[UGP]) with Monitor {
+ case class Sum(gs: List[UGP]) {
/** Continuation of the sum. */
var cont: () => Any = _;