diff options
author | Daniel C. Sobral <dcsobral@gmail.com> | 2011-11-15 23:08:16 -0200 |
---|---|---|
committer | Paul Phillips <paulp@improving.org> | 2011-12-02 14:15:35 -0800 |
commit | 1b37a0b4f21834fb1d181f2b50da1728e49cf467 (patch) | |
tree | e63c4fae8d22e378f00b35259f1ae03eca7dc0c2 /test | |
parent | 8be1cfc777352a2e65344ebc1413dd9398379081 (diff) | |
download | scala-1b37a0b4f21834fb1d181f2b50da1728e49cf467.tar.gz scala-1b37a0b4f21834fb1d181f2b50da1728e49cf467.tar.bz2 scala-1b37a0b4f21834fb1d181f2b50da1728e49cf467.zip |
Add withErrorMessage/withFailureMessage to Parser.
Can be used to reliably override the default no success messages.
Diffstat (limited to 'test')
-rw-r--r-- | test/files/run/parserNoSuccessMessage.check | 20 | ||||
-rw-r--r-- | test/files/run/parserNoSuccessMessage.scala | 19 |
2 files changed, 39 insertions, 0 deletions
diff --git a/test/files/run/parserNoSuccessMessage.check b/test/files/run/parserNoSuccessMessage.check new file mode 100644 index 0000000000..fe00d2fd3a --- /dev/null +++ b/test/files/run/parserNoSuccessMessage.check @@ -0,0 +1,20 @@ +[1.2] failure: string matching regex `\d+' expected but `x' found + +-x + ^ +[1.1] failure: string matching regex `\d+' expected but `x' found + +x +^ +[1.3] parsed: (Some(-)~5) +[1.2] parsed: (None~5) +[1.2] error: Number expected! + +-x + ^ +[1.1] error: Number expected! + +x +^ +[1.3] parsed: (Some(-)~5) +[1.2] parsed: (None~5) diff --git a/test/files/run/parserNoSuccessMessage.scala b/test/files/run/parserNoSuccessMessage.scala new file mode 100644 index 0000000000..93aa252db0 --- /dev/null +++ b/test/files/run/parserNoSuccessMessage.scala @@ -0,0 +1,19 @@ +object Test extends scala.util.parsing.combinator.RegexParsers { + def sign = "-" + def number = "\\d+".r + def p = sign.? ~ number withErrorMessage "Number expected!" + def q = sign.? ~! number withErrorMessage "Number expected!" + + def main(args: Array[String]) { + println(parseAll(p, "-x")) + println(parseAll(p, "x")) + println(parseAll(p, "-5")) + println(parseAll(p, "5")) + println(parseAll(q, "-x")) + println(parseAll(q, "x")) + println(parseAll(q, "-5")) + println(parseAll(q, "5")) + } +} + + |