A bit hack-ish but does the trick. The JSON.dump_default_options is a Hash but in mimic we use a C struct to store defaults. This class creates a view onto that struct.
# File lib/oj/mimic.rb, line 22 def []=(key, value) case key when :quirks_mode Oj.default_options = {:quirks_mode => value} when :ascii_only Oj.default_options = {:ascii_only => value} end end
# File lib/oj/mimic.rb, line 14 def initialize() oo = Oj.default_options self.store(:max_nesting, false) self.store(:allow_nan, true) self.store(:quirks_mode, oo[:quirks_mode]) self.store(:ascii_only, (:ascii == oo[:escape_mode])) end