summaryrefslogtreecommitdiff
path: root/test/files/run/t0700.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2008-05-22 15:13:53 +0000
committerMartin Odersky <odersky@gmail.com>2008-05-22 15:13:53 +0000
commite2fd411f0a2f78547167149cada72dc347394749 (patch)
tree569aed0e77679caea16ee72d5fb545d6dd2fa955 /test/files/run/t0700.scala
parentef6460b6e40f145c9538e714fbf22f9144e603ca (diff)
downloadscala-e2fd411f0a2f78547167149cada72dc347394749.tar.gz
scala-e2fd411f0a2f78547167149cada72dc347394749.tar.bz2
scala-e2fd411f0a2f78547167149cada72dc347394749.zip
fixed #911.
Diffstat (limited to 'test/files/run/t0700.scala')
-rwxr-xr-xtest/files/run/t0700.scala24
1 files changed, 24 insertions, 0 deletions
diff --git a/test/files/run/t0700.scala b/test/files/run/t0700.scala
new file mode 100755
index 0000000000..5a7180528c
--- /dev/null
+++ b/test/files/run/t0700.scala
@@ -0,0 +1,24 @@
+import java.io.{File,StringReader}
+
+import scala.util.parsing.combinator.Parsers
+import scala.util.parsing.input.{CharArrayReader, StreamReader}
+
+class TestParsers extends Parsers {
+ type Elem = Char
+
+ def p: Parser[List[Int]] = rep(p1 | p2)
+ def p1: Parser[Int] = 'a' ~ nl ~ 'b' ~ nl ^^^ 1
+ def p2: Parser[Int] = 'a' ~ nl ^^^ 2
+ def nl: Parser[Int] = rep(accept('\n') | accept('\r')) ^^^ 0
+}
+
+object Test {
+ def main(args: Array[String]): Unit = {
+ val tstParsers = new TestParsers
+ val s = "a\na\na"
+ val r1 = new CharArrayReader(s.toCharArray())
+ val r2 = StreamReader(new StringReader(s))
+ println(tstParsers.p(r1))
+ println(tstParsers.p(r2))
+ }
+}