diff options
author | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2019-05-13 21:25:22 +0900 |
---|---|---|
committer | Hiroshi SHIBATA <hsbt@ruby-lang.org> | 2019-06-19 18:17:25 +0900 |
commit | 1a2546c2be839baa7d0a50dc056d4d6987d26852 (patch) | |
tree | 19fef5d8b8d96452a51ab68e8093ea895192ca27 /test/racc/bench.y | |
parent | cbe06cd3501fdadd0e6e63094da2973484d70b0b (diff) |
Backport racc-1.4.15 from upstream.
Diffstat (limited to 'test/racc/bench.y')
-rw-r--r-- | test/racc/bench.y | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/test/racc/bench.y b/test/racc/bench.y new file mode 100644 index 0000000000..c6ba136201 --- /dev/null +++ b/test/racc/bench.y @@ -0,0 +1,36 @@ +class BenchmarkParser + +rule + + target: a a a a a a a a a a; + a: b b b b b b b b b b; + b: c c c c c c c c c c; + c: d d d d d d d d d d; + d: e e e e e e e e e e; + +end + +---- inner + +def initialize + @old = [ :e, 'e' ] + @i = 0 +end + +def next_token + return [false, '$'] if @i >= 10_0000 + @i += 1 + @old +end + +def parse + do_parse +end + +---- footer + +require 'benchmark' + +Benchmark.bm do |x| + x.report { BenchmarkParser.new.parse } +end |