summaryrefslogtreecommitdiff
path: root/src/library/scala/Responder.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2006-07-10 17:23:38 +0000
committerMartin Odersky <odersky@gmail.com>2006-07-10 17:23:38 +0000
commit49ea811d413fb912617e48252efe04e15e71d622 (patch)
tree7f50f04bf0e155db5c33087436e91f15ae830a41 /src/library/scala/Responder.scala
parentf670f315536667826657da6c44274f23ce9a75ba (diff)
downloadscala-49ea811d413fb912617e48252efe04e15e71d622.tar.gz
scala-49ea811d413fb912617e48252efe04e15e71d622.tar.bz2
scala-49ea811d413fb912617e48252efe04e15e71d622.zip
1. removed blank lines in error messages
2. added string concatenation + when lhs is not a string 3. Small library cleanups
Diffstat (limited to 'src/library/scala/Responder.scala')
-rw-r--r--src/library/scala/Responder.scala19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/library/scala/Responder.scala b/src/library/scala/Responder.scala
index 8d294e95ea..7bd4967059 100644
--- a/src/library/scala/Responder.scala
+++ b/src/library/scala/Responder.scala
@@ -8,7 +8,7 @@ object Responder {
/** creates a responder that answer continuations with the constant a */
def constant[a](x: a) = new Responder[a] {
- def foreach(k: a => unit) = k(x)
+ def respond(k: a => unit) = k(x)
}
/** executes x and returns true, useful as syntactic convenience in
@@ -42,22 +42,23 @@ object Responder {
*/
abstract class Responder[+a] {
- def foreach(k: a => unit): unit
+ def respond(k: a => unit): unit
+
+ def foreach(k: a => unit): unit = respond(k)
def map[b](f: a => b) = new Responder[b] {
- def foreach(k: b => unit): unit =
- Responder.this.foreach(x => k(f(x)))
+ def respond(k: b => unit): unit =
+ Responder.this.respond(x => k(f(x)))
}
def flatMap[b](f: a => Responder[b]) = new Responder[b] {
- def foreach(k: b => unit): unit =
- Responder.this.foreach(x => f(x).foreach(k))
+ def respond(k: b => unit): unit =
+ Responder.this.respond(x => f(x).respond(k))
}
def filter(p: a => boolean) = new Responder[a] {
- def foreach(k: a => unit): unit =
- Responder.this.foreach(x => if (p(x)) k(x) else ())
+ def respond(k: a => unit): unit =
+ Responder.this.respond(x => if (p(x)) k(x) else ())
}
-
}