summaryrefslogtreecommitdiff
path: root/sources/scala/Iterator.scala
diff options
context:
space:
mode:
Diffstat (limited to 'sources/scala/Iterator.scala')
-rw-r--r--sources/scala/Iterator.scala8
1 files changed, 7 insertions, 1 deletions
diff --git a/sources/scala/Iterator.scala b/sources/scala/Iterator.scala
index f3baf774d0..1cc26522d2 100644
--- a/sources/scala/Iterator.scala
+++ b/sources/scala/Iterator.scala
@@ -20,10 +20,16 @@ package scala;
object Iterator {
def empty[a] = new Iterator[a] {
- def hasNext = false;
+ def hasNext: boolean = false;
def next: a = error("next on empty iterator");
}
+ def single[a](x: a) = new Iterator[a] {
+ private var hasnext = false;
+ def hasNext: boolean = hasnext;
+ def next: a = if (hasnext) { hasnext = false; x } else error("next on empty iterator");
+ }
+
def fromValues[a](xs: a*) = xs.elements;
def fromArray[a](xs: Array[a]) = new Iterator[a] {