26 lines
606 B
Ruby
26 lines
606 B
Ruby
![]() |
module MultiJson
|
||
|
module Adapters
|
||
|
module JsonCommon
|
||
|
|
||
|
def load(string, options={})
|
||
|
string = string.read if string.respond_to?(:read)
|
||
|
::JSON.parse(string, :symbolize_names => options[:symbolize_keys], :quirks_mode => true)
|
||
|
end
|
||
|
|
||
|
def dump(object, options={})
|
||
|
object.to_json(process_options(options))
|
||
|
end
|
||
|
|
||
|
protected
|
||
|
|
||
|
def process_options(options={})
|
||
|
return options if options.empty?
|
||
|
opts = {}
|
||
|
opts.merge!(JSON::PRETTY_STATE_PROTOTYPE.to_h) if options.delete(:pretty)
|
||
|
opts.merge!(options)
|
||
|
end
|
||
|
|
||
|
end
|
||
|
end
|
||
|
end
|