jrjackson 0.4.18-java → 0.4.19-java

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 (62) hide show
  1. checksums.yaml +4 -4
  2. data/jrjackson.gemspec +1 -2
  3. data/lib/com/fasterxml/jackson/core/jackson-annotations/{2.15.2/jackson-annotations-2.15.2.jar → 2.15.4/jackson-annotations-2.15.4.jar} +0 -0
  4. data/lib/com/fasterxml/jackson/core/jackson-core/{2.15.2/jackson-core-2.15.2.jar → 2.15.4/jackson-core-2.15.4.jar} +0 -0
  5. data/lib/com/fasterxml/jackson/core/jackson-databind/{2.15.2/jackson-databind-2.15.2.jar → 2.15.4/jackson-databind-2.15.4.jar} +0 -0
  6. data/lib/com/fasterxml/jackson/module/jackson-module-afterburner/{2.15.2/jackson-module-afterburner-2.15.2.jar → 2.15.4/jackson-module-afterburner-2.15.4.jar} +0 -0
  7. data/lib/jrjackson/build_info.rb +8 -8
  8. data/lib/jrjackson/jars/{jrjackson-1.2.35.jar → jrjackson-1.2.36.jar} +0 -0
  9. data/lib/jrjackson_jars.rb +8 -8
  10. data/pom.xml +47 -10
  11. metadata +13 -78
  12. data/.gitignore +0 -16
  13. data/.jrubyr_c +0 -433
  14. data/Gemfile +0 -13
  15. data/Mavenfile +0 -25
  16. data/Rakefile +0 -39
  17. data/alt_bench.rb +0 -46
  18. data/changelog.md +0 -181
  19. data/profiling/profiled.rb +0 -15
  20. data/run_all_individual_bench.sh +0 -25
  21. data/run_jruby_individual_bench.sh +0 -20
  22. data/run_mri_individual_bench.sh +0 -7
  23. data/src/main/java/com/jrjackson/IParseHandler.java +0 -53
  24. data/src/main/java/com/jrjackson/JavaBigDecimalValueConverter.java +0 -17
  25. data/src/main/java/com/jrjackson/JavaBigIntValueConverter.java +0 -17
  26. data/src/main/java/com/jrjackson/JavaConverter.java +0 -10
  27. data/src/main/java/com/jrjackson/JavaFloatValueConverter.java +0 -16
  28. data/src/main/java/com/jrjackson/JavaHandler.java +0 -118
  29. data/src/main/java/com/jrjackson/JavaLongValueConverter.java +0 -16
  30. data/src/main/java/com/jrjackson/JjParse.java +0 -139
  31. data/src/main/java/com/jrjackson/JrJacksonBase.java +0 -152
  32. data/src/main/java/com/jrjackson/JrJacksonJava.java +0 -81
  33. data/src/main/java/com/jrjackson/JrJacksonRaw.java +0 -108
  34. data/src/main/java/com/jrjackson/JrJacksonRuby.java +0 -89
  35. data/src/main/java/com/jrjackson/JrJacksonSaj.java +0 -26
  36. data/src/main/java/com/jrjackson/JrJacksonSch.java +0 -25
  37. data/src/main/java/com/jrjackson/JrJacksonService.java +0 -38
  38. data/src/main/java/com/jrjackson/JrParse.java +0 -142
  39. data/src/main/java/com/jrjackson/ParseError.java +0 -16
  40. data/src/main/java/com/jrjackson/RubyAnySerializer.java +0 -291
  41. data/src/main/java/com/jrjackson/RubyBigDecimalValueConverter.java +0 -18
  42. data/src/main/java/com/jrjackson/RubyBigIntValueConverter.java +0 -21
  43. data/src/main/java/com/jrjackson/RubyConverter.java +0 -12
  44. data/src/main/java/com/jrjackson/RubyDateFormat.java +0 -34
  45. data/src/main/java/com/jrjackson/RubyFloatValueConverter.java +0 -18
  46. data/src/main/java/com/jrjackson/RubyHandler.java +0 -119
  47. data/src/main/java/com/jrjackson/RubyIntValueConverter.java +0 -18
  48. data/src/main/java/com/jrjackson/RubyJacksonModule.java +0 -80
  49. data/src/main/java/com/jrjackson/RubyKeyConverter.java +0 -12
  50. data/src/main/java/com/jrjackson/RubyNameConverter.java +0 -9
  51. data/src/main/java/com/jrjackson/RubyObjectDeserializer.java +0 -182
  52. data/src/main/java/com/jrjackson/RubyStringConverter.java +0 -18
  53. data/src/main/java/com/jrjackson/RubyStringKeyConverter.java +0 -15
  54. data/src/main/java/com/jrjackson/RubyStringNameConverter.java +0 -12
  55. data/src/main/java/com/jrjackson/RubySymbolKeyConverter.java +0 -15
  56. data/src/main/java/com/jrjackson/RubySymbolNameConverter.java +0 -12
  57. data/src/main/java/com/jrjackson/RubyUtils.java +0 -149
  58. data/src/main/java/com/jrjackson/SajParse.java +0 -169
  59. data/src/main/java/com/jrjackson/SchParse.java +0 -209
  60. data/src/main/java/com/jrjackson/StreamParse.java +0 -66
  61. data/src/test/java/com/jrjackson/RubyAnySerializerTest.java +0 -56
  62. data/test/jrjackson_test.rb +0 -578
data/.jrubyr_c DELETED
@@ -1,433 +0,0 @@
1
- ################################################################################
2
- # compiler settings
3
- ################################################################################
4
-
5
- # Set compilation mode. JIT = at runtime; FORCE = before execution.
6
- # Options: [JIT, FORCE, OFF, OFFIR], Default: JIT.
7
- # compile.mode=JIT
8
- compile.mode=FORCE
9
-
10
- # Dump to console all bytecode generated at runtime.
11
- # Options: [true, false], Default: false.
12
- compile.dump=false
13
-
14
- # (EXPERIMENTAL) Turn on compilation without polling for "unsafe" thread events.
15
- # Options: [true, false], Default: false.
16
- compile.threadless=false
17
-
18
- # Turn on fast operators for Fixnum and Float.
19
- # Options: [true, false], Default: true.
20
- compile.fastops=true
21
-
22
- # Set the number of lines at which compiled bodies are "chained".
23
- # Options: [Integer], Default: 500.
24
- compile.chainsize=500
25
-
26
- # Generate method bindings (handles) for compiled methods lazily.
27
- # Options: [true, false], Default: false.
28
- compile.lazyHandles=false
29
-
30
- # Enable or disable peephole optimizations.
31
- # Options: [true, false], Default: true.
32
- compile.peephole=true
33
-
34
- # Compile calls without guards, for experimentation.
35
- # Options: [true, false], Default: false.
36
- compile.noguards=false
37
-
38
- # Compile with all "mostly harmless" compiler optimizations.
39
- # Options: [true, false], Default: false.
40
- compile.fastest=true
41
-
42
- # Compile obj.__send__(<literal>, ...) as obj.<literal>(...).
43
- # Options: [true, false], Default: false.
44
- compile.fastsend=false
45
-
46
- # Return true from multiple assignment instead of a new array.
47
- # Options: [true, false], Default: false.
48
- compile.fastMasgn=false
49
-
50
- # Use invokedynamic for optimizing Ruby code
51
- # Options: [true, false], Default: false.
52
- # compile.invokedynamic=false
53
- compile.invokedynamic=true
54
-
55
-
56
- ################################################################################
57
- # invokedynamic settings
58
- ################################################################################
59
-
60
- # Maximum call site failures after which to inline cache.
61
- # Options: [Integer], Default: 1000.
62
- invokedynamic.maxfail=1000
63
-
64
- # Maximum polymorphism of PIC binding.
65
- # Options: [Integer], Default: 2.
66
- invokedynamic.maxpoly=2
67
-
68
- # Log binding of invokedynamic call sites.
69
- # Options: [true, false], Default: false.
70
- invokedynamic.log.binding=false
71
-
72
- # Log invokedynamic-based constant lookups.
73
- # Options: [true, false], Default: false.
74
- invokedynamic.log.constants=false
75
-
76
- # Enable all possible uses of invokedynamic.
77
- # Options: [true, false], Default: false.
78
- invokedynamic.all=true
79
-
80
- # Enable all safe (but maybe not fast) uses of invokedynamic.
81
- # Options: [true, false], Default: false.
82
- invokedynamic.safe=false
83
-
84
- # Enable invokedynamic for method invocations.
85
- # Options: [true, false], Default: true.
86
- invokedynamic.invocation=true
87
-
88
- # Use SwitchPoint for class modification guards on invocations.
89
- # Options: [true, false], Default: true.
90
- # invokedynamic.invocation.switchpoint=true
91
-
92
- # Also bind indirect method invokers to invokedynamic.
93
- # Options: [true, false], Default: true.
94
- invokedynamic.invocation.indirect=true
95
-
96
- # Bind Ruby to Java invocations with invokedynamic.
97
- # Options: [true, false], Default: true.
98
- invokedynamic.invocation.java=true
99
-
100
- # Bind Ruby attribue invocations directly to invokedynamic.
101
- # Options: [true, false], Default: true.
102
- invokedynamic.invocation.attr=true
103
-
104
- # Bind Fixnum and Float math using optimized logic.
105
- # Options: [true, false], Default: true.
106
- invokedynamic.invocation.fastops=true
107
-
108
- # Use invokedynamic to load cached values like literals and constants.
109
- # Options: [true, false], Default: true.
110
- invokedynamic.cache=true
111
-
112
- # Use invokedynamic to load constants.
113
- # Options: [true, false], Default: true.
114
- invokedynamic.cache.constants=true
115
-
116
- # Use invokedynamic to load literals.
117
- # Options: [true, false], Default: true.
118
- invokedynamic.cache.literals=true
119
-
120
- # Use invokedynamic to get/set instance variables.
121
- # Options: [true, false], Default: true.
122
- invokedynamic.cache.ivars=true
123
-
124
- # Use ClassValue to store class-specific data.
125
- # Options: [true, false], Default: false.
126
- invokedynamic.class.values=false
127
-
128
- # ################################################################################
129
- # # jit settings
130
- # ################################################################################
131
-
132
- # # Set the JIT threshold to the specified method invocation count.
133
- # # Options: [Integer], Default: 50.
134
- jit.threshold=1
135
-
136
- # # Set the max count of active methods eligible for JIT-compilation.
137
- # # Options: [Integer], Default: 4096.
138
- jit.max=16384
139
-
140
- # # Set the maximum full-class byte size allowed for jitted methods.
141
- # # Options: [Integer], Default: 30000.
142
- # jit.maxsize=30000
143
-
144
- # # Enable JIT logging (reports successful compilation).
145
- # # Options: [true, false], Default: false.
146
- # jit.logging=false
147
-
148
- # # Enable verbose JIT logging (reports failed compilation).
149
- # # Options: [true, false], Default: false.
150
- # jit.logging.verbose=false
151
-
152
- # # Enable stdout dumping of JITed bytecode.
153
- # # Options: [true, false], Default: false.
154
- # jit.dumping=false
155
-
156
- # # Log a message every n methods JIT compiled.
157
- # # Options: [Integer], Default: 0.
158
- # jit.logEvery=0
159
-
160
- # # Exclude methods from JIT. Comma delimited.
161
- # # Options: [ClsOrMod, ClsOrMod::method_name, -::method_name], Default: none.
162
- # jit.exclude=none
163
-
164
- # # Cache jitted method in-memory bodies across runtimes and loads.
165
- # # Options: [true, false], Default: true.
166
- # jit.cache=true
167
-
168
- # # Save jitted methods to <dir> as they're compiled, for future runs.
169
- # # Options: [dir], Default: null.
170
- # jit.codeCache=null
171
-
172
- # # Log loading of JITed bytecode.
173
- # # Options: [true, false], Default: false.
174
- # jit.debug=false
175
-
176
- # # Run the JIT compiler in a background thread.
177
- # # Options: [true, false], Default: true.
178
- # jit.background=true
179
-
180
-
181
- # ################################################################################
182
- # # intermediate representation settings
183
- # ################################################################################
184
-
185
- # # Debug generation of JRuby IR.
186
- # # Options: [true, false], Default: false.
187
- # ir.debug=false
188
-
189
- # # [EXPT]: Profile IR code during interpretation.
190
- # # Options: [true, false], Default: false.
191
- # ir.profile=false
192
-
193
- # # Debug compilation of JRuby IR.
194
- # # Options: [true, false], Default: false.
195
- # ir.compiler.debug=false
196
-
197
- # # Specify comma delimeted list of passes to run.
198
- # # Options: [String], Default: null.
199
- # ir.passes=null
200
-
201
- # # Specify comma delimeted list of passes to run after inlining a method.
202
- # # Options: [String], Default: null.
203
- # ir.inline_passes=null
204
-
205
-
206
- # ################################################################################
207
- # # native settings
208
- # ################################################################################
209
-
210
- # # Enable/disable native code, including POSIX features and C exts.
211
- # # Options: [true, false], Default: true.
212
- # native.enabled=true
213
-
214
- # # Enable verbose logging of native extension loading.
215
- # # Options: [true, false], Default: false.
216
- # native.verbose=false
217
-
218
- # # Enable or disable C extension support.
219
- # # Options: [true, false], Default: false.
220
- # cext.enabled=false
221
-
222
- # # Dump bytecode-generated FFI stubs to console.
223
- # # Options: [true, false], Default: false.
224
- # ffi.compile.dump=false
225
-
226
- # # Number of FFI invocations before generating a bytecode stub.
227
- # # Options: [Integer], Default: 100.
228
- # ffi.compile.threshold=100
229
-
230
- # # Use invokedynamic to bind FFI invocations.
231
- # # Options: [true, false], Default: false.
232
- # ffi.compile.invokedynamic=false
233
-
234
-
235
- # ################################################################################
236
- # # thread pooling settings
237
- # ################################################################################
238
-
239
- # # Enable reuse of native threads via a thread pool.
240
- # # Options: [true, false], Default: false.
241
- # thread.pool.enabled=false
242
-
243
- # # The minimum number of threads to keep alive in the pool.
244
- # # Options: [Integer], Default: 0.
245
- # thread.pool.min=0
246
-
247
- # # The maximum number of threads to allow in the pool.
248
- # # Options: [Integer], Default: 2147483647.
249
- # thread.pool.max=2147483647
250
-
251
- # # The maximum number of seconds to keep alive an idle thread.
252
- # # Options: [Integer], Default: 60.
253
- # thread.pool.ttl=60
254
-
255
-
256
- ################################################################################
257
- # miscellaneous settings
258
- ################################################################################
259
-
260
- # Specify the major Ruby version to be compatible with.
261
- # Options: [1.8, 1.9, 2.0], Default: 1.9.
262
- compat.version=2.0
263
-
264
- # Enable or disable ObjectSpace.each_object.
265
- # Options: [true, false], Default: false.
266
- objectspace.enabled=false
267
-
268
- # Enable or disable SipHash for String hash function.
269
- # Options: [true, false], Default: false.
270
- siphash.enabled=false
271
-
272
- # Set in-process launching of e.g. system('ruby ...').
273
- # Options: [true, false], Default: false.
274
- launch.inproc=false
275
-
276
- # Specify the major Java bytecode version.
277
- # Options: [1.5, 1.6, 1.7], Default: 1.7.
278
- bytecode.version=1.7
279
-
280
- # Set whether JMX management is enabled.
281
- # Options: [true, false], Default: false.
282
- management.enabled=false
283
-
284
- # Make non-local flow jumps generate backtraces.
285
- # Options: [true, false], Default: false.
286
- jump.backtrace=false
287
-
288
- # Do not unwrap process streams (issue on some recent JVMs).
289
- # Options: [true, false], Default: false.
290
- process.noUnwrap=false
291
-
292
- # Before instantiation, stand up a real Java class for ever Ruby class.
293
- # Options: [true, false], Default: false.
294
- reify.classes=false
295
-
296
- # Log errors during reification (reify.classes=true).
297
- # Options: [true, false], Default: false.
298
- reify.logErrors=false
299
-
300
- # Use reflection for binding methods, not generated bytecode.
301
- # Options: [true, false], Default: false.
302
- reflected.handles=false
303
-
304
- # Enable colorized backtraces.
305
- # Options: [true, false], Default: false.
306
- backtrace.color=false
307
-
308
- # Set the style of exception backtraces.
309
- # Options: [normal, raw, full, mri], Default: normal.
310
- backtrace.style=normal
311
-
312
- # Mask .java lines in Ruby backtraces.
313
- # Options: [true, false], Default: false.
314
- backtrace.mask=false
315
-
316
- # Set the signal used for dumping thread stacks.
317
- # Options: [USR1, USR2, etc], Default: USR2.
318
- thread.dump.signal=USR2
319
-
320
- # Use native impls for parts of net/protocol.
321
- # Options: [true, false], Default: false.
322
- native.net.protocol=false
323
-
324
- # Use JVM coroutines for Fiber.
325
- # Options: [true, false], Default: false.
326
- fiber.coroutines=false
327
-
328
- # Use a single global lock for requires.
329
- # Options: [true, false], Default: false.
330
- global.require.lock=false
331
-
332
- # Do a true process-obliterating native exec for Kernel#exec.
333
- # Options: [true, false], Default: true.
334
- native.exec=true
335
-
336
-
337
- # ################################################################################
338
- # # debugging and logging settings
339
- # ################################################################################
340
-
341
- # # Log require/load file searches.
342
- # # Options: [true, false], Default: false.
343
- # debug.loadService=false
344
-
345
- # # Log require/load parse+evaluate times.
346
- # # Options: [true, false], Default: false.
347
- # debug.loadService.timing=false
348
-
349
- # # Log externally-launched processes.
350
- # # Options: [true, false], Default: false.
351
- # debug.launch=false
352
-
353
- # # Set whether full traces are enabled (c-call/c-return).
354
- # # Options: [true, false], Default: false.
355
- # debug.fullTrace=false
356
-
357
- # # Print which script is executed by '-S' flag.
358
- # # Options: [true, false], Default: false.
359
- # debug.scriptResolution=false
360
-
361
- # # disables JRuby impl script loads and prints parse exceptions
362
- # # Options: [true, false], Default: false.
363
- # debug.parser=false
364
-
365
- # # Generate backtraces for heavily-used Errno exceptions (EAGAIN).
366
- # # Options: [true, false], Default: false.
367
- # errno.backtrace=false
368
-
369
- # # Log every time an exception is constructed.
370
- # # Options: [true, false], Default: false.
371
- # log.exceptions=false
372
-
373
- # # Log every time an exception backtrace is generated.
374
- # # Options: [true, false], Default: false.
375
- # log.backtraces=false
376
-
377
- # # Log every time a Kernel#caller backtrace is generated.
378
- # # Options: [true, false], Default: false.
379
- # log.callers=false
380
-
381
- # # Log every time a built-in warning backtrace is generated.
382
- # # Options: [true, false], Default: false.
383
- # log.warnings=false
384
-
385
- # # Use specified class for logging.
386
- # # Options: [class name], Default: org.jruby.util.log.JavaUtilLoggingLogger.
387
- # logger.class=org.jruby.util.log.JavaUtilLoggingLogger
388
-
389
-
390
- # ################################################################################
391
- # # java integration settings
392
- # ################################################################################
393
-
394
- # # Try to set inaccessible Java methods to be accessible.
395
- # # Options: [true, false], Default: true.
396
- # ji.setAccessible=true
397
-
398
- # # Log whether setAccessible is working.
399
- # # Options: [true, false], Default: false.
400
- # ji.logCanSetAccessible=false
401
-
402
- # # Allow Capitalized Java pacakge names.
403
- # # Options: [true, false], Default: false.
404
- # ji.upper.case.package.name.allowed=false
405
-
406
- # # Use java.lang.reflect.Proxy for interface impl.
407
- # # Options: [true, false], Default: false.
408
- # interfaces.useProxy=false
409
-
410
- # # Use generated handles instead of reflection for calling Java.
411
- # # Options: [true, false], Default: false.
412
- # java.handles=false
413
-
414
- # # Extend Java classes without using a proxy object.
415
- # # Options: [true, false], Default: false.
416
- # ji.newStyleExtension=false
417
-
418
- # # Cache Java object wrappers between calls.
419
- # # Options: [true, false], Default: true.
420
- # ji.objectProxyCache=true
421
-
422
- # # Allow external envs to replace JI proxy class factory
423
- # # Options: [String], Default: null.
424
- # ji.proxyClassFactory=null
425
-
426
-
427
- # ################################################################################
428
- # # profiling settings
429
- # ################################################################################
430
-
431
- # # Maximum number of methods to consider for profiling.
432
- # # Options: [Integer], Default: 100000.
433
- # profile.max.methods=100000
data/Gemfile DELETED
@@ -1,13 +0,0 @@
1
- # A sample Gemfile
2
- source "https://rubygems.org"
3
-
4
- group :development do
5
- gem 'gson', '>= 0.6'
6
- gem 'json', '~> 1.8'
7
- gem 'benchmark-ips'
8
- gem 'rake'
9
- gem 'ruby-maven'
10
- gem 'test-unit'
11
- end
12
-
13
- gemspec
data/Mavenfile DELETED
@@ -1,25 +0,0 @@
1
- #-*- mode: ruby -*-
2
-
3
- load File.expand_path('lib/jrjackson/build_info.rb', File.dirname(__FILE__))
4
- VERSION = ::JrJackson::BuildInfo.jar_version
5
- gemspec :jar => "jrjackson/jars/jrjackson-#{VERSION}.jar"
6
-
7
- # overwrite groupId:artifacgtId:version from gem
8
- id "com.jrjackson.jruby:jrjackson:#{VERSION}"
9
- packaging :jar
10
-
11
- properties 'project.build.sourceEncoding' => 'UTF-8',
12
- # create a pom.xml from this here
13
- 'polyglot.dump.pom' => 'pom.xml'
14
-
15
- jar 'junit:junit', '4.11', :scope => :test
16
-
17
- jar 'org.jruby:jruby', '9.2.13.0', :scope => :provided
18
-
19
- plugin :compiler, '3.1', :source => '1.8', :target => '1.8',
20
- :showDeprecation => false,
21
- :showWarnings => false,
22
- :executable => '${JAVA_HOME}/bin/javac',
23
- :fork => true
24
-
25
- plugin :surefire, '2.17', :skipTests => true
data/Rakefile DELETED
@@ -1,39 +0,0 @@
1
- require 'bundler'
2
- require 'ruby-maven'
3
- require 'rake/testtask'
4
-
5
- Bundler::GemHelper.install_tasks
6
-
7
- Rake::TestTask.new do |t|
8
- t.pattern = "test/*_test.rb"
9
- end
10
-
11
- desc "Run benchmarks"
12
- task :benchmark do
13
- load 'benchmarking/benchmark_threaded.rb'
14
- end
15
-
16
- desc "Pack jar after compiling classes, use this to rebuild the pom.xml"
17
- task :compile do
18
- RubyMaven.exec('prepare-package')
19
- # after packaging the jrjackson-x.y.z.jar vendor jar dependencies
20
- Rake::Task['vendor_jars'].invoke
21
- end
22
-
23
- task :vendor_jars do
24
- require 'jars/installer'
25
- Jars::Installer.vendor_jars!
26
- end
27
-
28
- desc "Clean build"
29
- task :clean do
30
- RubyMaven.exec('clean')
31
- end
32
-
33
- task :default => [ :compile ]
34
-
35
- require 'rubygems/package_task'
36
- Gem::PackageTask.new( eval File.read( 'jrjackson.gemspec' ) ) do
37
- desc 'Pack gem'
38
- task :package => [:compile]
39
- end
data/alt_bench.rb DELETED
@@ -1,46 +0,0 @@
1
- # coding: utf-8
2
- require 'benchmark/ips'
3
- require 'json'
4
- require File.expand_path('lib/jrjackson')
5
-
6
- obj = {
7
- :name => "Fredrick Smith",
8
- :quantity => 1_000_000,
9
- :addresses => {
10
- :address1 => "12 Heather Street, Parnell, Auckland, New Zealand",
11
- :address2 => "1 Queen Street, CBD, Auckland, New Zealand"
12
- }
13
- }
14
-
15
- json = JSON.dump(obj)
16
-
17
- puts "Decode ====================="
18
-
19
- puts 'Sleeping'
20
- sleep 45
21
- puts 'Working'
22
-
23
- # -JXrunhprof:cpu=samples,depth=30,file=jrjackson.hprof
24
-
25
- Benchmark.ips do |x|
26
- x.config(time: 20, warmup: 20)
27
-
28
- x.report("JrJackson new Ruby") { JrJackson::Ruby.parse(json, nil) }
29
- # x.report("JrJackson Raw") { JrJackson::Java.parse(json, nil) }
30
- # x.report("JSON") { JSON.load(json) }
31
-
32
- # x.report("JrJackson") { JrJackson::Raw.parse_sym(json) }
33
-
34
- # x.compare!
35
- end
36
-
37
- # puts "Encode ====================="
38
- # Benchmark.ips do |x|
39
- # x.config(time: 5, warmup: 10)
40
-
41
- # x.report("JrJackson Raw") { JrJackson::Base.generate(obj) }
42
- # x.report("JrJackson") { JrJackson::Json.dump(obj) }
43
- # x.report("JSON") { JSON.dump(obj) }
44
-
45
- # x.compare!
46
- # end