class JSON::Ext::Parser

This is the JSON parser implemented as a C extension. It can be configured to be used by setting

JSON.parser = JSON::Ext::Parser

with the method parser= in JSON.

Constants

Config

Public Class Methods

# File lib/json/ext.rb, line 17
def initialize(source, opts = nil)
  @source = source
  @config = Config.new(opts)
end
static VALUE cParser_m_parse(VALUE klass, VALUE Vsource, VALUE opts)
{
    Vsource = convert_encoding(StringValue(Vsource));
    StringValue(Vsource);

    JSON_ParserConfig _config = {0};
    JSON_ParserConfig *config = &_config;
    parser_config_init(config, opts);

    return cParser_parse(config, Vsource);
}
Also aliased as: parse

Public Instance Methods

# File lib/json/ext.rb, line 26
def parse
  @config.parse(@source)
end
# File lib/json/ext.rb, line 22
def source
  @source.dup
end