Method: MotionPrime::JSON.parse
- Defined in:
- motion-prime/models/json.rb
.parse(str_data, &block) ⇒ Hash, ...
Parses a string or data object and converts it in data structure.
12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'motion-prime/models/json.rb', line 12 def self.parse(str_data, &block) return nil unless str_data data = str_data.respond_to?(:to_data) ? str_data.to_data : str_data if data.respond_to?(:dataUsingEncoding) data = data.dataUsingEncoding(NSUTF8StringEncoding) end opts = NSJSONReadingMutableContainers | NSJSONReadingMutableLeaves | NSJSONReadingAllowFragments error = Pointer.new(:id) obj = NSJSONSerialization.JSONObjectWithData(data, options: opts, error: error) raise JsonParseError, error[0].description if error[0] obj end |