Sha256: 8a58e4afb88da6a6cc69d2e114487c47749c35856889599367e72a38f1c3629d

Contents?: true

Size: 671 Bytes

Versions: 14

Compression:

Stored size: 671 Bytes

Contents

# encoding: UTF-8
require 'yajl' unless defined?(Yajl::Parser)

module JSON
  class JSONError < StandardError; end unless defined?(JSON::JSONError)
  class ParserError < JSONError; end unless defined?(JSON::ParserError)

  def self.default_options
    @default_options ||= {:symbolize_keys => false}
  end

  def self.parse(str, opts=JSON.default_options)
    begin
      Yajl::Parser.parse(str, opts)
    rescue Yajl::ParseError => e
      raise JSON::ParserError, e.message
    end
  end

  def self.load(input, *args)
    begin
      Yajl::Parser.parse(input, default_options)
    rescue Yajl::ParseError => e
      raise JSON::ParserError, e.message
    end
  end
end

Version data entries

14 entries across 14 versions & 2 rubygems

Version Path
yajl-ruby-0.8.3 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.8.2 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.8.1 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.8.0 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.7.9 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.7.8 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.7.7 lib/yajl/json_gem/parsing.rb
benofsky-yajl-ruby-0.7.7 lib/yajl/json_gem/parsing.rb
benofsky-yajl-ruby-0.7.6 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.7.6 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.7.5 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.7.4 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.7.3 lib/yajl/json_gem/parsing.rb
yajl-ruby-0.7.2 lib/yajl/json_gem/parsing.rb