diff options
author | Lex Spoon <lex@lexspoon.org> | 2007-04-19 02:50:36 +0000 |
---|---|---|
committer | Lex Spoon <lex@lexspoon.org> | 2007-04-19 02:50:36 +0000 |
commit | e43c7bef06d64b98f00752bd06510768ba37910a (patch) | |
tree | 5173077228071a7105a18048411cde80a738d7d2 /test/files/run/interpreter.scala | |
parent | 81cc9a834ceacb02fa7ec933708f6513248becd7 (diff) | |
download | scala-e43c7bef06d64b98f00752bd06510768ba37910a.tar.gz scala-e43c7bef06d64b98f00752bd06510768ba37910a.tar.bz2 scala-e43c7bef06d64b98f00752bd06510768ba37910a.zip |
Diffstat (limited to 'test/files/run/interpreter.scala')
-rw-r--r-- | test/files/run/interpreter.scala | 86 |
1 files changed, 86 insertions, 0 deletions
diff --git a/test/files/run/interpreter.scala b/test/files/run/interpreter.scala new file mode 100644 index 0000000000..8c06d4c70d --- /dev/null +++ b/test/files/run/interpreter.scala @@ -0,0 +1,86 @@ +import scala.tools.nsc._ +import java.io.{BufferedReader, StringReader, PrintWriter} + +object Test { + val testCodeString = <code> +// basics +3+4 +def gcd(x: int, y: int): int = {{ + if (x == 0) y + else if (y == 0) x + else gcd(y%x, x) +}} +val five = gcd(15,35) +var x = 1 +x = 2 +val three = x+1 +type anotherint = Int +val four: anotherint = 4 +val bogus: anotherint = "hello" +trait PointlessTrait + +// implicit conversions +case class Foo(n: int) +case class Bar(n: int) +implicit def foo2bar(foo: Foo) = Bar(foo.n) +val bar: Bar = Foo(3) + +// importing from a previous result +import bar._ +val m = n + +// stressing the imports mechanism +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 +val one = 1 + + +val x1 = 1 +val x2 = 1 +val x3 = 1 +val x4 = 1 +val x5 = 1 +val x6 = 1 +val x7 = 1 +val x8 = 1 +val x9 = 1 +val x10 = 1 +val x11 = 1 +val x12 = 1 +val x13 = 1 +val x14 = 1 +val x15 = 1 +val x16 = 1 +val x17 = 1 +val x18 = 1 +val x19 = 1 +val x20 = 1 + +val two = one + x5 + +</code>.text + + + def main(args: Array[String]) { + val input = new BufferedReader(new StringReader(testCodeString)) + val repl = new InterpreterLoop(input, new PrintWriter(Console.out)) + repl.main(new Settings) + } +} |