edward-crazy_ivan 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. data/.gitignore +7 -0
  2. data/LICENSE +20 -0
  3. data/README.rdoc +94 -0
  4. data/Rakefile +63 -0
  5. data/TODO +33 -0
  6. data/VERSION +1 -0
  7. data/bin/crazy_ivan +114 -0
  8. data/crazy_ivan.gemspec +182 -0
  9. data/lib/crazy_ivan.rb +5 -0
  10. data/lib/html_asset_crush.rb +56 -0
  11. data/lib/report_assembler.rb +78 -0
  12. data/lib/test_runner.rb +71 -0
  13. data/templates/css/ci.css +11 -0
  14. data/templates/index.html +105 -0
  15. data/templates/javascript/json-template.js +544 -0
  16. data/templates/javascript/prototype.js +4917 -0
  17. data/test/crazy_ivan_test.rb +4 -0
  18. data/test/test_helper.rb +9 -0
  19. data/vendor/json-1.1.7/CHANGES +119 -0
  20. data/vendor/json-1.1.7/GPL +340 -0
  21. data/vendor/json-1.1.7/README +78 -0
  22. data/vendor/json-1.1.7/RUBY +58 -0
  23. data/vendor/json-1.1.7/Rakefile +270 -0
  24. data/vendor/json-1.1.7/TODO +1 -0
  25. data/vendor/json-1.1.7/VERSION +1 -0
  26. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkComparison.log +52 -0
  27. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_fast-autocorrelation.dat +1000 -0
  28. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_fast.dat +1001 -0
  29. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_pretty-autocorrelation.dat +900 -0
  30. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_pretty.dat +901 -0
  31. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_safe-autocorrelation.dat +1000 -0
  32. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt#generator_safe.dat +1001 -0
  33. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkExt.log +261 -0
  34. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_fast-autocorrelation.dat +1000 -0
  35. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_fast.dat +1001 -0
  36. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_pretty-autocorrelation.dat +1000 -0
  37. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_pretty.dat +1001 -0
  38. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_safe-autocorrelation.dat +1000 -0
  39. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure#generator_safe.dat +1001 -0
  40. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkPure.log +262 -0
  41. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkRails#generator-autocorrelation.dat +1000 -0
  42. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkRails#generator.dat +1001 -0
  43. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/GeneratorBenchmarkRails.log +82 -0
  44. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkComparison.log +34 -0
  45. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkExt#parser-autocorrelation.dat +900 -0
  46. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkExt#parser.dat +901 -0
  47. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkExt.log +81 -0
  48. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkPure#parser-autocorrelation.dat +1000 -0
  49. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkPure#parser.dat +1001 -0
  50. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkPure.log +82 -0
  51. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkRails#parser-autocorrelation.dat +1000 -0
  52. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkRails#parser.dat +1001 -0
  53. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkRails.log +82 -0
  54. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkYAML#parser-autocorrelation.dat +1000 -0
  55. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkYAML#parser.dat +1001 -0
  56. data/vendor/json-1.1.7/benchmarks/data-p4-3GHz-ruby18/ParserBenchmarkYAML.log +82 -0
  57. data/vendor/json-1.1.7/benchmarks/generator_benchmark.rb +165 -0
  58. data/vendor/json-1.1.7/benchmarks/parser_benchmark.rb +197 -0
  59. data/vendor/json-1.1.7/bin/edit_json.rb +9 -0
  60. data/vendor/json-1.1.7/bin/prettify_json.rb +75 -0
  61. data/vendor/json-1.1.7/data/example.json +1 -0
  62. data/vendor/json-1.1.7/data/index.html +38 -0
  63. data/vendor/json-1.1.7/data/prototype.js +4184 -0
  64. data/vendor/json-1.1.7/doc-templates/main.txt +283 -0
  65. data/vendor/json-1.1.7/ext/json/ext/generator/extconf.rb +11 -0
  66. data/vendor/json-1.1.7/ext/json/ext/generator/generator.c +919 -0
  67. data/vendor/json-1.1.7/ext/json/ext/generator/unicode.c +182 -0
  68. data/vendor/json-1.1.7/ext/json/ext/generator/unicode.h +53 -0
  69. data/vendor/json-1.1.7/ext/json/ext/parser/extconf.rb +11 -0
  70. data/vendor/json-1.1.7/ext/json/ext/parser/parser.c +1829 -0
  71. data/vendor/json-1.1.7/ext/json/ext/parser/parser.rl +686 -0
  72. data/vendor/json-1.1.7/ext/json/ext/parser/unicode.c +154 -0
  73. data/vendor/json-1.1.7/ext/json/ext/parser/unicode.h +58 -0
  74. data/vendor/json-1.1.7/install.rb +26 -0
  75. data/vendor/json-1.1.7/lib/json/Array.xpm +21 -0
  76. data/vendor/json-1.1.7/lib/json/FalseClass.xpm +21 -0
  77. data/vendor/json-1.1.7/lib/json/Hash.xpm +21 -0
  78. data/vendor/json-1.1.7/lib/json/Key.xpm +73 -0
  79. data/vendor/json-1.1.7/lib/json/NilClass.xpm +21 -0
  80. data/vendor/json-1.1.7/lib/json/Numeric.xpm +28 -0
  81. data/vendor/json-1.1.7/lib/json/String.xpm +96 -0
  82. data/vendor/json-1.1.7/lib/json/TrueClass.xpm +21 -0
  83. data/vendor/json-1.1.7/lib/json/add/core.rb +135 -0
  84. data/vendor/json-1.1.7/lib/json/add/rails.rb +58 -0
  85. data/vendor/json-1.1.7/lib/json/common.rb +354 -0
  86. data/vendor/json-1.1.7/lib/json/editor.rb +1371 -0
  87. data/vendor/json-1.1.7/lib/json/ext.rb +15 -0
  88. data/vendor/json-1.1.7/lib/json/json.xpm +1499 -0
  89. data/vendor/json-1.1.7/lib/json/pure/generator.rb +430 -0
  90. data/vendor/json-1.1.7/lib/json/pure/parser.rb +269 -0
  91. data/vendor/json-1.1.7/lib/json/pure.rb +77 -0
  92. data/vendor/json-1.1.7/lib/json/version.rb +8 -0
  93. data/vendor/json-1.1.7/lib/json.rb +10 -0
  94. data/vendor/json-1.1.7/tests/fixtures/fail1.json +1 -0
  95. data/vendor/json-1.1.7/tests/fixtures/fail10.json +1 -0
  96. data/vendor/json-1.1.7/tests/fixtures/fail11.json +1 -0
  97. data/vendor/json-1.1.7/tests/fixtures/fail12.json +1 -0
  98. data/vendor/json-1.1.7/tests/fixtures/fail13.json +1 -0
  99. data/vendor/json-1.1.7/tests/fixtures/fail14.json +1 -0
  100. data/vendor/json-1.1.7/tests/fixtures/fail18.json +1 -0
  101. data/vendor/json-1.1.7/tests/fixtures/fail19.json +1 -0
  102. data/vendor/json-1.1.7/tests/fixtures/fail2.json +1 -0
  103. data/vendor/json-1.1.7/tests/fixtures/fail20.json +1 -0
  104. data/vendor/json-1.1.7/tests/fixtures/fail21.json +1 -0
  105. data/vendor/json-1.1.7/tests/fixtures/fail22.json +1 -0
  106. data/vendor/json-1.1.7/tests/fixtures/fail23.json +1 -0
  107. data/vendor/json-1.1.7/tests/fixtures/fail24.json +1 -0
  108. data/vendor/json-1.1.7/tests/fixtures/fail25.json +1 -0
  109. data/vendor/json-1.1.7/tests/fixtures/fail27.json +2 -0
  110. data/vendor/json-1.1.7/tests/fixtures/fail28.json +2 -0
  111. data/vendor/json-1.1.7/tests/fixtures/fail3.json +1 -0
  112. data/vendor/json-1.1.7/tests/fixtures/fail4.json +1 -0
  113. data/vendor/json-1.1.7/tests/fixtures/fail5.json +1 -0
  114. data/vendor/json-1.1.7/tests/fixtures/fail6.json +1 -0
  115. data/vendor/json-1.1.7/tests/fixtures/fail7.json +1 -0
  116. data/vendor/json-1.1.7/tests/fixtures/fail8.json +1 -0
  117. data/vendor/json-1.1.7/tests/fixtures/fail9.json +1 -0
  118. data/vendor/json-1.1.7/tests/fixtures/pass1.json +56 -0
  119. data/vendor/json-1.1.7/tests/fixtures/pass15.json +1 -0
  120. data/vendor/json-1.1.7/tests/fixtures/pass16.json +1 -0
  121. data/vendor/json-1.1.7/tests/fixtures/pass17.json +1 -0
  122. data/vendor/json-1.1.7/tests/fixtures/pass2.json +1 -0
  123. data/vendor/json-1.1.7/tests/fixtures/pass26.json +1 -0
  124. data/vendor/json-1.1.7/tests/fixtures/pass3.json +6 -0
  125. data/vendor/json-1.1.7/tests/test_json.rb +312 -0
  126. data/vendor/json-1.1.7/tests/test_json_addition.rb +164 -0
  127. data/vendor/json-1.1.7/tests/test_json_fixtures.rb +34 -0
  128. data/vendor/json-1.1.7/tests/test_json_generate.rb +106 -0
  129. data/vendor/json-1.1.7/tests/test_json_rails.rb +146 -0
  130. data/vendor/json-1.1.7/tests/test_json_unicode.rb +62 -0
  131. data/vendor/json-1.1.7/tools/fuzz.rb +139 -0
  132. data/vendor/json-1.1.7/tools/server.rb +61 -0
  133. metadata +186 -0
@@ -0,0 +1,270 @@
1
+ begin
2
+ require 'rake/gempackagetask'
3
+ require 'rake/extensiontask'
4
+ rescue LoadError
5
+ end
6
+ require 'rake/clean'
7
+
8
+ require 'rbconfig'
9
+ include Config
10
+
11
+ PKG_NAME = 'json'
12
+ PKG_VERSION = File.read('VERSION').chomp
13
+ PKG_FILES = FileList["**/*"].exclude(/CVS|pkg|tmp|coverage|Makefile/).exclude(/\.(so|bundle|o|#{CONFIG['DLEXT']})$/)
14
+ EXT_ROOT_DIR = 'ext/json/ext'
15
+ EXT_PARSER_DIR = "#{EXT_ROOT_DIR}/parser"
16
+ EXT_PARSER_DL = "#{EXT_ROOT_DIR}/parser.#{CONFIG['DLEXT']}"
17
+ EXT_PARSER_SRC = "#{EXT_PARSER_DIR}/parser.c"
18
+ PKG_FILES << EXT_PARSER_SRC
19
+ EXT_GENERATOR_DIR = "#{EXT_ROOT_DIR}/generator"
20
+ EXT_GENERATOR_DL = "#{EXT_ROOT_DIR}/generator.#{CONFIG['DLEXT']}"
21
+ EXT_GENERATOR_SRC = "#{EXT_GENERATOR_DIR}/generator.c"
22
+ RAGEL_CODEGEN = %w[rlcodegen rlgen-cd ragel].find { |c| system(c, '-v') }
23
+ RAGEL_DOTGEN = %w[rlgen-dot rlgen-cd ragel].find { |c| system(c, '-v') }
24
+ RAGEL_PATH = "#{EXT_PARSER_DIR}/parser.rl"
25
+ CLEAN.include FileList['diagrams/*.*'], 'doc', 'coverage', 'tmp',
26
+ FileList["ext/**/{Makefile,mkmf.log}"],
27
+ FileList["{ext,lib}/**/*.{so,bundle,#{CONFIG['DLEXT']},o,obj,pdb,lib,manifest,exp,def}"]
28
+
29
+ desc "Installing library (pure)"
30
+ task :install_pure => :version do
31
+ ruby 'install.rb'
32
+ end
33
+
34
+ task :install_ext_really do
35
+ sitearchdir = CONFIG["sitearchdir"]
36
+ cd 'ext' do
37
+ for file in Dir["json/ext/*.#{CONFIG['DLEXT']}"]
38
+ d = File.join(sitearchdir, file)
39
+ mkdir_p File.dirname(d)
40
+ install(file, d)
41
+ end
42
+ end
43
+ end
44
+
45
+ desc "Installing library (extension)"
46
+ task :install_ext => [ :compile_ext, :install_pure, :install_ext_really ]
47
+
48
+ desc "Installing library (extension)"
49
+ task :install => :install_ext
50
+
51
+ desc "Compiling extension"
52
+ task :compile_ext => [ EXT_PARSER_DL, EXT_GENERATOR_DL ]
53
+
54
+ file EXT_PARSER_DL => EXT_PARSER_SRC do
55
+ cd EXT_PARSER_DIR do
56
+ ruby 'extconf.rb'
57
+ system 'make'
58
+ end
59
+ cp "#{EXT_PARSER_DIR}/parser.#{CONFIG['DLEXT']}", EXT_ROOT_DIR
60
+ end
61
+
62
+ file EXT_GENERATOR_DL => EXT_GENERATOR_SRC do
63
+ cd EXT_GENERATOR_DIR do
64
+ ruby 'extconf.rb'
65
+ system 'make'
66
+ end
67
+ cp "#{EXT_GENERATOR_DIR}/generator.#{CONFIG['DLEXT']}", EXT_ROOT_DIR
68
+ end
69
+
70
+ desc "Generate parser with ragel"
71
+ task :ragel => EXT_PARSER_SRC
72
+
73
+ task :ragel_clean do
74
+ rm_rf EXT_PARSER_SRC
75
+ end
76
+
77
+ file EXT_PARSER_SRC => RAGEL_PATH do
78
+ cd EXT_PARSER_DIR do
79
+ if RAGEL_CODEGEN == 'ragel'
80
+ system "ragel parser.rl -G2 -o parser.c"
81
+ else
82
+ system "ragel -x parser.rl | #{RAGEL_CODEGEN} -G2"
83
+ end
84
+ end
85
+ end
86
+
87
+ desc "Generate diagrams of ragel parser (ps)"
88
+ task :ragel_dot_ps do
89
+ root = 'diagrams'
90
+ specs = []
91
+ File.new(RAGEL_PATH).grep(/^\s*machine\s*(\S+);\s*$/) { specs << $1 }
92
+ for s in specs
93
+ if RAGEL_DOTGEN == 'ragel'
94
+ system "ragel #{RAGEL_PATH} -S#{s} -p -V | dot -Tps -o#{root}/#{s}.ps"
95
+ else
96
+ system "ragel -x #{RAGEL_PATH} -S#{s} | #{RAGEL_DOTGEN} -p|dot -Tps -o#{root}/#{s}.ps"
97
+ end
98
+ end
99
+ end
100
+
101
+ desc "Generate diagrams of ragel parser (png)"
102
+ task :ragel_dot_png do
103
+ root = 'diagrams'
104
+ specs = []
105
+ File.new(RAGEL_PATH).grep(/^\s*machine\s*(\S+);\s*$/) { specs << $1 }
106
+ for s in specs
107
+ if RAGEL_DOTGEN == 'ragel'
108
+ system "ragel #{RAGEL_PATH} -S#{s} -p -V | dot -Tpng -o#{root}/#{s}.png"
109
+ else
110
+ system "ragel -x #{RAGEL_PATH} -S#{s} | #{RAGEL_DOTGEN} -p|dot -Tpng -o#{root}/#{s}.png"
111
+ end
112
+ end
113
+ end
114
+
115
+ desc "Generate diagrams of ragel parser"
116
+ task :ragel_dot => [ :ragel_dot_png, :ragel_dot_ps ]
117
+
118
+ desc "Testing library (pure ruby)"
119
+ task :test_pure => :clean do
120
+ ENV['JSON'] = 'pure'
121
+ ENV['RUBYOPT'] = "-Iext:lib #{ENV['RUBYOPT']}"
122
+ system "testrb #{Dir['tests/*.rb'] * ' '}"
123
+ end
124
+
125
+ desc "Testing library (extension)"
126
+ task :test_ext => :compile_ext do
127
+ ENV['JSON'] = 'ext'
128
+ ENV['RUBYOPT'] = "-Iext:lib #{ENV['RUBYOPT']}"
129
+ system "testrb #{Dir['tests/*.rb'] * ' '}"
130
+ end
131
+
132
+ desc "Testing library (pure ruby and extension)"
133
+ task :test => [ :test_pure, :test_ext ]
134
+
135
+ desc "Benchmarking parser"
136
+ task :benchmark_parser do
137
+ ENV['RUBYOPT'] = "-Ilib:ext #{ENV['RUBYOPT']}"
138
+ ruby 'benchmarks/parser_benchmark.rb'
139
+ end
140
+
141
+ desc "Benchmarking generator"
142
+ task :benchmark_generator do
143
+ ENV['RUBYOPT'] = "-Ilib:ext #{ENV['RUBYOPT']}"
144
+ ruby 'benchmarks/generator_benchmark.rb'
145
+ end
146
+
147
+ desc "Benchmarking library"
148
+ task :benchmark => [ :benchmark_parser, :benchmark_generator ]
149
+
150
+ desc "Clean benchmark data"
151
+ task :clean_benchmark_data do
152
+ rm_rf Dir['benchmarks/data/*.{dat,log}']
153
+ end
154
+
155
+ desc "Create RDOC documentation"
156
+ task :doc => [ :version, EXT_PARSER_SRC ] do
157
+ system "rdoc -S -o doc -m main.txt doc-templates/main.txt lib/json.rb #{FileList['lib/json/**/*.rb']} #{EXT_PARSER_SRC} #{EXT_GENERATOR_SRC}"
158
+ end
159
+
160
+ if defined?(Gem) and defined?(Rake::GemPackageTask) and defined?(Rake::ExtensionTask)
161
+ spec_pure = Gem::Specification.new do |s|
162
+ s.name = 'json_pure'
163
+ s.version = PKG_VERSION
164
+ s.summary = "A JSON implementation in Ruby"
165
+ s.description = "This is a JSON implementation in pure Ruby."
166
+
167
+ s.files = PKG_FILES
168
+
169
+ s.require_path = 'lib'
170
+
171
+ s.bindir = "bin"
172
+ s.executables = [ "edit_json.rb", "prettify_json.rb" ]
173
+ s.default_executable = "edit_json.rb"
174
+
175
+ s.has_rdoc = true
176
+ s.rdoc_options <<
177
+ '--title' << 'JSON -- A JSON implemention' <<
178
+ '--main' << 'JSON' << '--line-numbers'
179
+ s.test_files.concat Dir['tests/*.rb']
180
+
181
+ s.author = "Florian Frank"
182
+ s.email = "flori@ping.de"
183
+ s.homepage = "http://json.rubyforge.org"
184
+ s.rubyforge_project = "json"
185
+ end
186
+
187
+ Rake::GemPackageTask.new(spec_pure) do |pkg|
188
+ pkg.need_tar = true
189
+ pkg.package_files += PKG_FILES
190
+ end
191
+
192
+ spec_ext = Gem::Specification.new do |s|
193
+ s.name = 'json'
194
+ s.version = PKG_VERSION
195
+ s.summary = "A JSON implementation as a Ruby extension"
196
+ s.description = "This is a JSON implementation as a Ruby extension in C."
197
+
198
+ s.files = PKG_FILES
199
+
200
+ s.extensions = FileList['ext/**/extconf.rb']
201
+
202
+ s.require_path = EXT_ROOT_DIR
203
+ s.require_paths << 'ext'
204
+ s.require_paths << 'lib'
205
+
206
+ s.bindir = "bin"
207
+ s.executables = [ "edit_json.rb", "prettify_json.rb" ]
208
+ s.default_executable = "edit_json.rb"
209
+
210
+ s.has_rdoc = true
211
+ s.rdoc_options <<
212
+ '--title' << 'JSON -- A JSON implemention' <<
213
+ '--main' << 'JSON' << '--line-numbers'
214
+ s.test_files.concat Dir['tests/*.rb']
215
+
216
+ s.author = "Florian Frank"
217
+ s.email = "flori@ping.de"
218
+ s.homepage = "http://json.rubyforge.org"
219
+ s.rubyforge_project = "json"
220
+ end
221
+
222
+ Rake::GemPackageTask.new(spec_ext) do |pkg|
223
+ pkg.need_tar = true
224
+ pkg.package_files = PKG_FILES
225
+ end
226
+
227
+ Rake::ExtensionTask.new do |ext|
228
+ ext.name = 'parser'
229
+ ext.gem_spec = spec_ext
230
+ ext.cross_compile = true
231
+ ext.cross_platform = 'i386-mswin32'
232
+ ext.ext_dir = 'ext/json/ext/parser'
233
+ ext.lib_dir = 'lib/json/ext'
234
+ end
235
+
236
+ Rake::ExtensionTask.new do |ext|
237
+ ext.name = 'generator'
238
+ ext.gem_spec = spec_ext
239
+ ext.cross_compile = true
240
+ ext.cross_platform = 'i386-mswin32'
241
+ ext.ext_dir = 'ext/json/ext/generator'
242
+ ext.lib_dir = 'lib/json/ext'
243
+ end
244
+ end
245
+
246
+ desc m = "Writing version information for #{PKG_VERSION}"
247
+ task :version do
248
+ puts m
249
+ File.open(File.join('lib', 'json', 'version.rb'), 'w') do |v|
250
+ v.puts <<EOT
251
+ module JSON
252
+ # JSON version
253
+ VERSION = '#{PKG_VERSION}'
254
+ VERSION_ARRAY = VERSION.split(/\\./).map { |x| x.to_i } # :nodoc:
255
+ VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
256
+ VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
257
+ VERSION_BUILD = VERSION_ARRAY[2] # :nodoc:
258
+ end
259
+ EOT
260
+ end
261
+ end
262
+
263
+ # TODO task :release => [ :version, :clean, :package_win ]
264
+ desc "Build all gems and archives for a new release."
265
+ task :release => [ :clean, :version, :cross, :native, :gem ] do
266
+ system "#$0 clean native gem"
267
+ system "#$0 clean package"
268
+ end
269
+
270
+ task :default => [ :version, :compile_ext ]
@@ -0,0 +1 @@
1
+
@@ -0,0 +1 @@
1
+ 1.1.7
@@ -0,0 +1,52 @@
1
+ ========================== 2009-04-01T16:54:14 CEST ===========================
2
+
3
+ Comparing times (call_time_mean):
4
+ 1 GeneratorBenchmarkExt#generator_fast 1000 repeats:
5
+ 547.354332608 ( real) -> 15.090x
6
+ 0.001826970
7
+ 2 GeneratorBenchmarkExt#generator_safe 1000 repeats:
8
+ 443.968212317 ( real) -> 12.240x
9
+ 0.002252414
10
+ 3 GeneratorBenchmarkExt#generator_pretty 900 repeats:
11
+ 375.104545883 ( real) -> 10.341x
12
+ 0.002665923
13
+ 4 GeneratorBenchmarkPure#generator_fast 1000 repeats:
14
+ 49.978706968 ( real) -> 1.378x
15
+ 0.020008521
16
+ 5 GeneratorBenchmarkRails#generator 1000 repeats:
17
+ 38.531868759 ( real) -> 1.062x
18
+ 0.025952543
19
+ 6 GeneratorBenchmarkPure#generator_safe 1000 repeats:
20
+ 36.927649925 ( real) -> 1.018x 7 (>=3859)
21
+ 0.027079979
22
+ 7 GeneratorBenchmarkPure#generator_pretty 1000 repeats:
23
+ 36.272134441 ( real) -> 1.000x 6 (>=3859)
24
+ 0.027569373
25
+ calls/sec ( time) -> speed covers
26
+ secs/call
27
+
28
+ Comparing times (call_time_median):
29
+ 1 GeneratorBenchmarkExt#generator_fast 1000 repeats:
30
+ 708.258020939 ( real) -> 16.547x
31
+ 0.001411915
32
+ 2 GeneratorBenchmarkExt#generator_safe 1000 repeats:
33
+ 569.105020353 ( real) -> 13.296x
34
+ 0.001757145
35
+ 3 GeneratorBenchmarkExt#generator_pretty 900 repeats:
36
+ 482.825371244 ( real) -> 11.280x
37
+ 0.002071142
38
+ 4 GeneratorBenchmarkPure#generator_fast 1000 repeats:
39
+ 62.717626652 ( real) -> 1.465x
40
+ 0.015944481
41
+ 5 GeneratorBenchmarkRails#generator 1000 repeats:
42
+ 43.965681162 ( real) -> 1.027x
43
+ 0.022745013
44
+ 6 GeneratorBenchmarkPure#generator_safe 1000 repeats:
45
+ 43.929073409 ( real) -> 1.026x 7 (>=3859)
46
+ 0.022763968
47
+ 7 GeneratorBenchmarkPure#generator_pretty 1000 repeats:
48
+ 42.802514491 ( real) -> 1.000x 6 (>=3859)
49
+ 0.023363113
50
+ calls/sec ( time) -> speed covers
51
+ secs/call
52
+ ===============================================================================