jrjackson 0.4.18-java → 0.4.19-java

Sign up to get free protection for your applications and to get access to all the features.
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