gems.multi_json-1.12.1.lib.multi_json.adapters.nsjsonserialization.rb Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of sass-maven-plugin Show documentation
Show all versions of sass-maven-plugin Show documentation
A Maven Plugin that compiles Sass files.
framework 'Foundation'
require 'multi_json/adapters/ok_json'
module MultiJson
module Adapters
class Nsjsonserialization < MultiJson::Adapters::OkJson
ParseError = ::MultiJson::OkJson::Error
def load(string, options = {})
data = string.dataUsingEncoding(NSUTF8StringEncoding)
object = NSJSONSerialization.JSONObjectWithData(data, :options => NSJSONReadingMutableContainers | NSJSONReadingMutableLeaves, :error => nil)
if object
object = symbolize_keys(object) if options[:symbolize_keys]
object
else
super(string, options)
end
end
def dump(object, options = {})
pretty = options[:pretty] ? NSJSONWritingPrettyPrinted : 0
object = object.as_json if object.respond_to?(:as_json)
if NSJSONSerialization.isValidJSONObject(object)
data = NSJSONSerialization.dataWithJSONObject(object, :options => pretty, :error => nil)
NSMutableString.alloc.initWithData(data, :encoding => NSUTF8StringEncoding)
else
super(object, options)
end
end
end
end
end
© 2015 - 2025 Weber Informatics LLC | Privacy Policy