Class Crack::JSON
In: lib/crack/json.rb
Parent: Object

Methods

parse   unescape  

Constants

DATE_REGEX = /^\d{4}-\d{2}-\d{2}|\d{4}-\d{1,2}-\d{1,2}[ \t]+\d{1,2}:\d{2}:\d{2}(\.[0-9]*)?(([ \t]*)Z|[-+]\d{2}?(:\d{2})?)?$/   matches YAML-formatted dates

Public Class methods

[Source]

# File lib/crack/json.rb, line 11
    def self.parse(json)
      YAML.load(unescape(convert_json_to_yaml(json)))
    rescue ArgumentError => e
      raise ParseError, "Invalid JSON string"
    end

Protected Class methods

[Source]

# File lib/crack/json.rb, line 18
      def self.unescape(str)
        str.gsub(/\\u([0-9a-f]{4})/) { [$1.hex].pack("U") }
      end

[Validate]