diff options
Diffstat (limited to 'test/files/run')
-rw-r--r-- | test/files/run/nonlocalreturn.check | 1 | ||||
-rw-r--r-- | test/files/run/nonlocalreturn.scala | 15 | ||||
-rw-r--r-- | test/files/run/t5018.scala | 37 | ||||
-rw-r--r-- | test/files/run/t5514.check | 19 | ||||
-rw-r--r-- | test/files/run/t5514.scala | 35 | ||||
-rw-r--r-- | test/files/run/t5577.check | 11 | ||||
-rw-r--r-- | test/files/run/t5577.scala | 27 | ||||
-rw-r--r-- | test/files/run/t5612.check | 4 | ||||
-rw-r--r-- | test/files/run/t5612.scala | 28 | ||||
-rw-r--r-- | test/files/run/t5656.check | 1 | ||||
-rw-r--r-- | test/files/run/t5656.scala | 11 |
11 files changed, 189 insertions, 0 deletions
diff --git a/test/files/run/nonlocalreturn.check b/test/files/run/nonlocalreturn.check new file mode 100644 index 0000000000..aeb2d5e239 --- /dev/null +++ b/test/files/run/nonlocalreturn.check @@ -0,0 +1 @@ +Some(1) diff --git a/test/files/run/nonlocalreturn.scala b/test/files/run/nonlocalreturn.scala new file mode 100644 index 0000000000..3c1e7420ed --- /dev/null +++ b/test/files/run/nonlocalreturn.scala @@ -0,0 +1,15 @@ +object Test { + def wrap[K](body: => K): K = body + + def f(): Option[Int] = { + wrap({ return Some(1) ; None }) + } + + def main(args: Array[String]) { + println(f()) + } +} +// java.lang.ClassCastException: scala.Some cannot be cast to scala.None$ +// at Test$$anonfun$f$1.apply(nonlocalreturn.scala:5) +// at Test$$anonfun$f$1.apply(nonlocalreturn.scala:5) +// at Test$.wrap(nonlocalreturn.scala:2) diff --git a/test/files/run/t5018.scala b/test/files/run/t5018.scala new file mode 100644 index 0000000000..bb67a252e5 --- /dev/null +++ b/test/files/run/t5018.scala @@ -0,0 +1,37 @@ + + + +import java.io._ +import collection._ + + + +object Test { + + def serializeDeserialize[T <: AnyRef](obj: T) = { + val buffer = new ByteArrayOutputStream + val out = new ObjectOutputStream(buffer) + out.writeObject(obj) + val in = new ObjectInputStream(new ByteArrayInputStream(buffer.toByteArray)) + in.readObject.asInstanceOf[T] + } + + def main(args: Array[String]) { + val values = mutable.Map(1 -> 1).values + assert(serializeDeserialize(values).toList == values.toList) + + val keyset = mutable.Map(1 -> 1).keySet + assert(serializeDeserialize(keyset) == keyset) + + val imkeyset = immutable.Map(1 -> 1).keySet + assert(serializeDeserialize(imkeyset) == imkeyset) + + val defaultmap = immutable.Map(1 -> 1).withDefaultValue(1) + assert(serializeDeserialize(defaultmap) == defaultmap) + + val minusmap = mutable.Map(1 -> 1).withDefault(x => -x) + assert(serializeDeserialize(minusmap) == minusmap) + } + +} + diff --git a/test/files/run/t5514.check b/test/files/run/t5514.check new file mode 100644 index 0000000000..c68f7c9029 --- /dev/null +++ b/test/files/run/t5514.check @@ -0,0 +1,19 @@ +constructed reader: 10 +constructed reader: 9 +constructed reader: 8 +constructed reader: 7 +constructed reader: 6 +constructed reader: 5 +constructed reader: 4 +constructed reader: 3 +constructed reader: 2 +constructed reader: 1 +constructed reader: 0 +[0.0] parsed: List(s10, s9, s8, s7, s6, s5, s4, s3, s2, s1) +constructed reader: 10 +constructed reader: 9 +constructed reader: 8 +constructed reader: 7 +constructed reader: 6 +constructed reader: 5 +[0.0] parsed: List(s10, s9, s8, s7, s6)
\ No newline at end of file diff --git a/test/files/run/t5514.scala b/test/files/run/t5514.scala new file mode 100644 index 0000000000..efd5ba6cb9 --- /dev/null +++ b/test/files/run/t5514.scala @@ -0,0 +1,35 @@ + + + +import scala.io.Source +import scala.util.parsing.combinator.Parsers +import scala.util.parsing.input.Reader +import scala.util.parsing.input.Position + + + +class DemoReader(n: Int) extends Reader[String] { + def atEnd = n == 0 + def first = if (n >= 0) "s" + n else throw new IllegalArgumentException("No more input.") + def rest = new DemoReader(n - 1) + def pos = new Position { + def line = 0 + def column = 0 + def lineContents = first + } + println("constructed reader: " + n) +} + + +object Test extends App with Parsers { + type Elem = String + def startsWith(prefix: String) = acceptIf(_ startsWith prefix)("Error: " + _) + + val resrep = startsWith("s").*(new DemoReader(10)) + Console println resrep + + val resrep5 = repN(5, startsWith("s"))(new DemoReader(10)) + Console println resrep5 +} + + diff --git a/test/files/run/t5577.check b/test/files/run/t5577.check new file mode 100644 index 0000000000..3eca387955 --- /dev/null +++ b/test/files/run/t5577.check @@ -0,0 +1,11 @@ +Received a size hint: 10 +0 +1 +2 +3 +4 +5 +6 +7 +8 +9
\ No newline at end of file diff --git a/test/files/run/t5577.scala b/test/files/run/t5577.scala new file mode 100644 index 0000000000..b5d6d8c5b6 --- /dev/null +++ b/test/files/run/t5577.scala @@ -0,0 +1,27 @@ + + + +import collection._ + + + +object Test { + + class AlarmingBuffer[T] extends mutable.ArrayBuffer[T] { + override def sizeHint(x: Int) { + println("Received a size hint: " + x) + super.sizeHint(x) + } + } + + def main(args: Array[String]) { + val iteratorBuilder = (new AlarmingBuffer[Int]) mapResult { + res => res.iterator + } + + iteratorBuilder.sizeHint(10) + iteratorBuilder ++= (0 until 10) + iteratorBuilder.result.foreach(println) + } + +} diff --git a/test/files/run/t5612.check b/test/files/run/t5612.check new file mode 100644 index 0000000000..9d19cca292 --- /dev/null +++ b/test/files/run/t5612.check @@ -0,0 +1,4 @@ +START for List(Two, Two, One, Three) +TWO +TWO +ONE diff --git a/test/files/run/t5612.scala b/test/files/run/t5612.scala new file mode 100644 index 0000000000..48b3093548 --- /dev/null +++ b/test/files/run/t5612.scala @@ -0,0 +1,28 @@ +object L extends Enumeration { + val One, Two, Three = Value +} + +class Foo { + def foo(xs: List[L.Value]) { + import scala.util.control.Breaks.{break, breakable} + println("START for " + xs) + breakable { + for (x <- xs) { + x match { + case L.One => println("ONE"); return + case L.Two => println("TWO") + case L.Three => println("THREE"); break + } + } + } + println("FINISH") + } +} + +object Test { + def main(args: Array[String]) { + val f = new Foo() + val l = List(L.Two, L.Two, L.One, L.Three) + f.foo(l) + } +} diff --git a/test/files/run/t5656.check b/test/files/run/t5656.check new file mode 100644 index 0000000000..9543ee799e --- /dev/null +++ b/test/files/run/t5656.check @@ -0,0 +1 @@ +List(1, 2, 3)_List(a, b, c)
\ No newline at end of file diff --git a/test/files/run/t5656.scala b/test/files/run/t5656.scala new file mode 100644 index 0000000000..f5ea147a4e --- /dev/null +++ b/test/files/run/t5656.scala @@ -0,0 +1,11 @@ + + + + +object Test { + + def main(args: Array[String]) { + println(Seq(List('1', '2', '3'), List('a', 'b', 'c')).view.addString(new StringBuilder, "_")) + } + +} |