Rakefile in konstructor-0.3.0 vs Rakefile in konstructor-0.4.0

- old
+ new

@@ -2,5 +2,75 @@ require "rspec/core/rake_task" RSpec::Core::RakeTask.new(:spec) task :default => :spec + +task :benchmark do + require 'konstructor' + require 'benchmark' + + n = 10000 + + Benchmark.bm(30) do |x| + x.report('def:') do + n.times do + Class.new do + def one; end + def two; end + def three; end + def four; end + def five; end + end + end + end + x.report('attr_accessor:') do + n.times do + Class.new do + attr_accessor :one, :two, :three, :four, :five + end + end + end + x.report('konstructor after:') do + n.times do + Class.new do + def one; end + def two; end + def three; end + def four; end + def five; end + + konstructor :one, :two, :three, :four, :five + end + end + end + x.report('konstructor before:') do + n.times do + Class.new do + konstructor :one, :two, :three, :four, :five + + def one; end + def two; end + def three; end + def four; end + def five; end + end + end + end + x.report('konstructor nameless:') do + n.times do + Class.new do + konstructor + def one; end + konstructor + def two; end + konstructor + def three; end + konstructor + def four; end + konstructor + def five; end + end + end + end + end +end \ No newline at end of file