diff options
author | Martin Odersky <odersky@gmail.com> | 2013-05-13 18:55:36 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2013-05-13 18:55:36 +0200 |
commit | b866c49bde62ee8ee52358dee746db64741b5891 (patch) | |
tree | b4f4473887d04fd4d29dd83141b5de88f56444cc /test/test/ParserTest.scala | |
parent | 9ba33cb09d684eb5b5ea10379e801ebc7de135ba (diff) | |
download | dotty-b866c49bde62ee8ee52358dee746db64741b5891.tar.gz dotty-b866c49bde62ee8ee52358dee746db64741b5891.tar.bz2 dotty-b866c49bde62ee8ee52358dee746db64741b5891.zip |
New parser tests
… which take some statistics.
So far (on a Macbook pro): code base tested = scala/src + dotty/src
lines: 290'000
nodes created: ~1'004'000
parse times + tree building times after 10 iterations: 700-750ms, i.e. ~ 400Klines/sec
full transform of 1M nodes without tree copying: ~50ms
full transform with full copying: 150-200ms
Diffstat (limited to 'test/test/ParserTest.scala')
-rw-r--r-- | test/test/ParserTest.scala | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/test/test/ParserTest.scala b/test/test/ParserTest.scala index 32bfdfe28..ae5c3fdc4 100644 --- a/test/test/ParserTest.scala +++ b/test/test/ParserTest.scala @@ -7,12 +7,19 @@ import dotty.tools.dotc.parsing._ import Tokens._, Parsers._ import UntypedTrees.untpd._ import org.junit.Test +import scala.collection.mutable.ListBuffer class ParserTest extends DottyTest { def parse(name: String): Tree = parse(new PlainFile(name)) var parsed = 0 + val parsedTrees = new ListBuffer[Tree] + + def reset() = { + parsed = 0 + parsedTrees.clear() + } def parse(file: PlainFile): Tree = { //println("***** parsing " + file) @@ -20,6 +27,7 @@ class ParserTest extends DottyTest { val parser = new Parser(source) val tree = parser.parse() parsed += 1 + parsedTrees += tree tree } |