36 lines
		
	
	
		
			657 B
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			36 lines
		
	
	
		
			657 B
		
	
	
	
		
			Ruby
		
	
	
	
| $: << File.join(File.dirname(__FILE__), '..', 'lib')
 | |
| require 'radius'
 | |
| 
 | |
| if RUBY_PLATFORM == 'java'
 | |
|   require 'java'
 | |
|   require 'radius/parser/jscanner'
 | |
| end
 | |
| 
 | |
| require 'benchmark'
 | |
| 
 | |
| document = <<EOF
 | |
| Before it all
 | |
| <r:foo>
 | |
|   Middle Top
 | |
|   <r:bar />
 | |
|   Middle Bottom
 | |
| </r:foo>
 | |
| After it all
 | |
| EOF
 | |
| 
 | |
| amount = 1000
 | |
| 
 | |
| Benchmark.bmbm do |bm|
 | |
|   bm.report('vanilla') do
 | |
|     scanner = Radius::Scanner.new(:scanner => Radius::Scanner)
 | |
|     amount.times { scanner.operate('r', document) }
 | |
|   end
 | |
| 
 | |
|   if RUBY_PLATFORM == 'java'
 | |
|     bm.report('JavaScanner') do
 | |
|       scanner = Radius::JavaScanner.new(JRuby.runtime)
 | |
|       amount.times { scanner.operate('r', document) }
 | |
|     end
 | |
|   end
 | |
| end
 |