Ruby
2.0.0p247(2013-06-27revision41674)
|
Go to the source code of this file.
static VALUE cJSON_parser_s_allocate | ( | VALUE | klass | ) | [static] |
Definition at line 2118 of file parser.c.
References Data_Wrap_Struct, JSON_allocate(), JSON_free(), and JSON_mark().
Referenced by Init_parser().
static VALUE convert_encoding | ( | VALUE | source | ) | [static] |
Definition at line 1567 of file parser.c.
References CEncoding_ASCII_8BIT, CEncoding_UTF_16BE, CEncoding_UTF_16LE, CEncoding_UTF_32BE, CEncoding_UTF_32LE, CEncoding_UTF_8, eParserError, FORCE_UTF8, i_encode, i_encoding, mJSON, rb_funcall(), rb_raise(), rb_str_dup(), rb_str_new2(), RSTRING_LEN, and RSTRING_PTR.
Referenced by cParser_initialize().
static int convert_UTF32_to_UTF8 | ( | char * | buf, |
UTF32 | ch | ||
) | [static] |
Definition at line 44 of file parser.c.
Referenced by json_string_unescape().
static VALUE cParser_initialize | ( | int | argc, |
VALUE * | argv, | ||
VALUE | self | ||
) | [static] |
Definition at line 1634 of file parser.c.
References Check_Type, convert_encoding(), FIX2INT, GET_PARSER_INIT, i_allow_nan, i_array_class, i_create_additions, i_create_id, i_match_string, i_max_nesting, i_object_class, i_quirks_mode, i_symbolize_names, ID2SYM, match_string(), mJSON, NIL_P, option_given_p, Qnil, rb_convert_type(), rb_eArgError, rb_eTypeError, rb_funcall(), rb_hash_aref(), rb_raise(), rb_scan_args(), RSTRING_LEN, RSTRING_PTR, RTEST, StringValue, T_FIXNUM, T_HASH, and T_STRING.
Referenced by Init_parser().
static VALUE cParser_parse | ( | VALUE | self | ) | [static] |
Definition at line 2083 of file parser.c.
References cParser_parse_quirks_mode(), cParser_parse_strict(), and GET_PARSER.
Referenced by Init_parser().
static VALUE cParser_parse_quirks_mode | ( | VALUE | self | ) | [static] |
Definition at line 1917 of file parser.c.
References eParserError, EVIL, GET_PARSER, JSON_parse_value(), JSON_quirks_mode_first_final, JSON_quirks_mode_start, NULL, Qnil, rb_raise(), and result.
Referenced by cParser_parse().
static VALUE cParser_parse_strict | ( | VALUE | self | ) | [static] |
Definition at line 1743 of file parser.c.
References eParserError, EVIL, GET_PARSER, JSON_first_final, JSON_parse_array(), JSON_parse_object(), JSON_start, NULL, Qnil, rb_raise(), and result.
Referenced by cParser_parse().
static VALUE cParser_quirks_mode_p | ( | VALUE | self | ) | [static] |
Definition at line 2141 of file parser.c.
References GET_PARSER, Qfalse, and Qtrue.
Referenced by Init_parser().
static VALUE cParser_source | ( | VALUE | self | ) | [static] |
Definition at line 2130 of file parser.c.
References GET_PARSER, and rb_str_dup().
Referenced by Init_parser().
void Init_parser | ( | ) |
Definition at line 2148 of file parser.c.
References CEncoding_ASCII_8BIT, CEncoding_UTF_16BE, CEncoding_UTF_16LE, CEncoding_UTF_32BE, CEncoding_UTF_32LE, CEncoding_UTF_8, CInfinity, cJSON_parser_s_allocate(), CMinusInfinity, CNaN, cParser, cParser_initialize(), cParser_parse(), cParser_quirks_mode_p(), cParser_source(), eNestingError, eParserError, i_allow_nan, i_aref, i_array_class, i_aset, i_chr, i_create_additions, i_create_id, i_deep_const_get, i_encode, i_encoding, i_json_creatable_p, i_json_create, i_key_p, i_leftshift, i_match, i_match_string, i_max_nesting, i_object_class, i_quirks_mode, i_symbolize_names, mExt, mJSON, rb_cObject, rb_const_get(), rb_define_alloc_func(), rb_define_class_under(), rb_define_method(), rb_define_module(), rb_define_module_under(), rb_funcall(), rb_intern, rb_path2class(), rb_require(), and rb_str_new2().
static JSON_Parser* JSON_allocate | ( | ) | [static] |
Definition at line 2095 of file parser.c.
References ALLOC, JSON_ParserStruct::fbuffer, fbuffer_alloc(), and MEMZERO.
Referenced by cJSON_parser_s_allocate().
static void JSON_free | ( | JSON_Parser * | json | ) | [static] |
Definition at line 2112 of file parser.c.
References JSON_ParserStruct::fbuffer, fbuffer_free(), and ruby_xfree().
Referenced by cJSON_parser_s_allocate().
static void JSON_mark | ( | JSON_Parser * | json | ) | [static] |
Definition at line 2103 of file parser.c.
References JSON_ParserStruct::array_class, JSON_ParserStruct::create_id, JSON_ParserStruct::match_string, JSON_ParserStruct::object_class, rb_gc_mark_maybe(), and JSON_ParserStruct::Vsource.
Referenced by cJSON_parser_s_allocate().
static char* JSON_parse_array | ( | JSON_Parser * | json, |
char * | p, | ||
char * | pe, | ||
VALUE * | result | ||
) | [static] |
Definition at line 1054 of file parser.c.
References JSON_ParserStruct::array_class, JSON_ParserStruct::current_nesting, eNestingError, eParserError, EVIL, i_leftshift, JSON_array_first_final, JSON_array_start, JSON_parse_value(), JSON_ParserStruct::max_nesting, NIL_P, NULL, Qnil, rb_ary_new(), rb_ary_push(), rb_class_new_instance(), rb_funcall(), and rb_raise().
Referenced by cParser_parse_strict(), and JSON_parse_value().
static char* JSON_parse_float | ( | JSON_Parser * | json, |
char * | p, | ||
char * | pe, | ||
VALUE * | result | ||
) | [static] |
Definition at line 888 of file parser.c.
References EVIL, JSON_ParserStruct::fbuffer, fbuffer_append(), fbuffer_append_char(), fbuffer_clear(), FBUFFER_PTR, JSON_float_first_final, JSON_float_start, JSON_ParserStruct::memo, NULL, rb_cstr_to_dbl(), and rb_float_new().
Referenced by JSON_parse_value().
static char* JSON_parse_integer | ( | JSON_Parser * | json, |
char * | p, | ||
char * | pe, | ||
VALUE * | result | ||
) | [static] |
Definition at line 789 of file parser.c.
References EVIL, JSON_ParserStruct::fbuffer, fbuffer_append(), fbuffer_append_char(), fbuffer_clear(), FBUFFER_PTR, JSON_integer_first_final, JSON_integer_start, JSON_ParserStruct::memo, NULL, and rb_cstr2inum().
Referenced by JSON_parse_value().
static char* JSON_parse_object | ( | JSON_Parser * | json, |
char * | p, | ||
char * | pe, | ||
VALUE * | result | ||
) | [static] |
Definition at line 102 of file parser.c.
References JSON_ParserStruct::create_additions, JSON_ParserStruct::create_id, JSON_ParserStruct::current_nesting, eNestingError, EVIL, i_aref, i_aset, i_deep_const_get, i_json_creatable_p, i_json_create, JSON_object_first_final, JSON_object_start, JSON_parse_string(), JSON_parse_value(), JSON_ParserStruct::max_nesting, mJSON, NIL_P, NULL, JSON_ParserStruct::object_class, JSON_ParserStruct::parsing_name, Qnil, rb_class_new_instance(), rb_funcall(), rb_hash_aref(), rb_hash_aset(), rb_hash_new(), rb_raise(), and RTEST.
Referenced by cParser_parse_strict(), and JSON_parse_value().
static char* JSON_parse_string | ( | JSON_Parser * | json, |
char * | p, | ||
char * | pe, | ||
VALUE * | result | ||
) | [static] |
Definition at line 1398 of file parser.c.
References JSON_ParserStruct::create_additions, EVIL, FORCE_UTF8, i_json_create, JSON_string_first_final, JSON_string_start, json_string_unescape(), match_i(), JSON_ParserStruct::match_string, match_string(), JSON_ParserStruct::memo, NIL_P, NULL, JSON_ParserStruct::parsing_name, rb_ary_entry(), rb_ary_new2(), rb_ary_push(), rb_funcall(), rb_hash_foreach(), rb_str_buf_new(), rb_str_intern(), RTEST, and JSON_ParserStruct::symbolize_names.
Referenced by JSON_parse_object(), and JSON_parse_value().
static char* JSON_parse_value | ( | JSON_Parser * | json, |
char * | p, | ||
char * | pe, | ||
VALUE * | result | ||
) | [static] |
Definition at line 480 of file parser.c.
References JSON_ParserStruct::allow_nan, CInfinity, CMinusInfinity, CNaN, JSON_ParserStruct::current_nesting, eParserError, EVIL, JSON_parse_array(), JSON_parse_float(), JSON_parse_integer(), JSON_parse_object(), JSON_parse_string(), JSON_value_first_final, JSON_value_start, MinusInfinity, NULL, Qfalse, Qnil, Qtrue, JSON_ParserStruct::quirks_mode, and rb_raise().
Referenced by cParser_parse_quirks_mode(), JSON_parse_array(), and JSON_parse_object().
static VALUE json_string_unescape | ( | VALUE | result, |
char * | string, | ||
char * | stringEnd | ||
) | [static] |
Definition at line 1304 of file parser.c.
References buf, convert_UTF32_to_UTF8(), Qnil, rb_str_buf_cat(), result, unescape_unicode(), and UNI_SUR_HIGH_START.
Referenced by JSON_parse_string().
Definition at line 1387 of file parser.c.
References i_json_creatable_p, i_match, Qundef, rb_ary_entry(), rb_ary_push(), rb_funcall(), RTEST, ST_CONTINUE, and ST_STOP.
Referenced by JSON_parse_string().
static UTF32 unescape_unicode | ( | const unsigned char * | p | ) | [static] |
Definition at line 25 of file parser.c.
References digit_values, result, and UNI_REPLACEMENT_CHAR.
Referenced by json_string_unescape().
VALUE CEncoding_ASCII_8BIT [static] |
Definition at line 71 of file parser.c.
Referenced by convert_encoding(), and Init_parser().
VALUE CEncoding_UTF_16BE [static] |
Definition at line 71 of file parser.c.
Referenced by convert_encoding(), and Init_parser().
VALUE CEncoding_UTF_16LE [static] |
Definition at line 71 of file parser.c.
Referenced by convert_encoding(), and Init_parser().
VALUE CEncoding_UTF_32BE [static] |
Definition at line 71 of file parser.c.
Referenced by convert_encoding(), and Init_parser().
VALUE CEncoding_UTF_32LE [static] |
Definition at line 71 of file parser.c.
Referenced by convert_encoding(), and Init_parser().
VALUE CEncoding_UTF_8 [static] |
Definition at line 71 of file parser.c.
Referenced by convert_encoding(), and Init_parser().
Definition at line 79 of file parser.c.
Referenced by Init_parser(), and JSON_parse_value().
VALUE CMinusInfinity [static] |
Definition at line 79 of file parser.c.
Referenced by Init_parser(), and JSON_parse_value().
Definition at line 79 of file parser.c.
Referenced by Init_parser(), and JSON_parse_value().
Definition at line 78 of file parser.c.
Referenced by Init_parser().
const char digit_values[256] [static] |
{ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 10, 11, 12, 13, 14, 15, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }
Definition at line 8 of file parser.c.
Referenced by unescape_unicode().
VALUE eNestingError [static] |
Definition at line 78 of file parser.c.
Referenced by Init_parser(), JSON_parse_array(), and JSON_parse_object().
VALUE eParserError [static] |
Definition at line 78 of file parser.c.
Referenced by convert_encoding(), cParser_parse_quirks_mode(), cParser_parse_strict(), Init_parser(), JSON_parse_array(), and JSON_parse_value().
ID i_allow_nan [static] |
Definition at line 81 of file parser.c.
Referenced by cParser_initialize(), and Init_parser().
Definition at line 81 of file parser.c.
Referenced by Init_parser(), and JSON_parse_object().
ID i_array_class [static] |
Definition at line 81 of file parser.c.
Referenced by cParser_initialize(), and Init_parser().
Definition at line 81 of file parser.c.
Referenced by Init_parser(), and JSON_parse_object().
Definition at line 81 of file parser.c.
Referenced by Init_parser().
ID i_create_additions [static] |
Definition at line 81 of file parser.c.
Referenced by cParser_initialize(), and Init_parser().
ID i_create_id [static] |
Definition at line 81 of file parser.c.
Referenced by cParser_initialize(), and Init_parser().
ID i_deep_const_get [static] |
Definition at line 81 of file parser.c.
Referenced by Init_parser(), and JSON_parse_object().
Definition at line 73 of file parser.c.
Referenced by convert_encoding(), and Init_parser().
ID i_encoding [static] |
Definition at line 73 of file parser.c.
Referenced by convert_encoding(), and Init_parser().
ID i_json_creatable_p [static] |
Definition at line 81 of file parser.c.
Referenced by Init_parser(), JSON_parse_object(), and match_i().
ID i_json_create [static] |
Definition at line 81 of file parser.c.
Referenced by Init_parser(), JSON_parse_object(), and JSON_parse_string().
Definition at line 81 of file parser.c.
Referenced by Init_parser().
ID i_leftshift [static] |
Definition at line 81 of file parser.c.
Referenced by Init_parser(), and JSON_parse_array().
Definition at line 81 of file parser.c.
Referenced by Init_parser(), and match_i().
ID i_match_string [static] |
Definition at line 81 of file parser.c.
Referenced by cParser_initialize(), and Init_parser().
ID i_max_nesting [static] |
Definition at line 81 of file parser.c.
Referenced by cParser_initialize(), and Init_parser().
ID i_object_class [static] |
Definition at line 81 of file parser.c.
Referenced by cParser_initialize(), and Init_parser().
ID i_quirks_mode [static] |
Definition at line 81 of file parser.c.
Referenced by cParser_initialize(), and Init_parser().
ID i_symbolize_names [static] |
Definition at line 81 of file parser.c.
Referenced by cParser_initialize(), and Init_parser().
const int JSON_array_en_main = 1 [static] |
const int JSON_array_error = 0 [static] |
const int JSON_array_first_final = 17 [static] |
Definition at line 1045 of file parser.c.
Referenced by JSON_parse_array().
const int JSON_array_start = 1 [static] |
Definition at line 1044 of file parser.c.
Referenced by JSON_parse_array().
const int JSON_en_main = 1 [static] |
const int JSON_error = 0 [static] |
const int JSON_first_final = 10 [static] |
Definition at line 1734 of file parser.c.
Referenced by cParser_parse_strict().
const int JSON_float_en_main = 1 [static] |
const int JSON_float_error = 0 [static] |
const int JSON_float_first_final = 8 [static] |
Definition at line 879 of file parser.c.
Referenced by JSON_parse_float().
const int JSON_float_start = 1 [static] |
Definition at line 878 of file parser.c.
Referenced by JSON_parse_float().
const int JSON_integer_en_main = 1 [static] |
const int JSON_integer_error = 0 [static] |
const int JSON_integer_first_final = 3 [static] |
Definition at line 780 of file parser.c.
Referenced by JSON_parse_integer().
const int JSON_integer_start = 1 [static] |
Definition at line 779 of file parser.c.
Referenced by JSON_parse_integer().
const int JSON_object_en_main = 1 [static] |
const int JSON_object_error = 0 [static] |
const int JSON_object_first_final = 27 [static] |
Definition at line 93 of file parser.c.
Referenced by JSON_parse_object().
const int JSON_object_start = 1 [static] |
Definition at line 92 of file parser.c.
Referenced by JSON_parse_object().
const int JSON_quirks_mode_en_main = 1 [static] |
const int JSON_quirks_mode_error = 0 [static] |
const int JSON_quirks_mode_first_final = 10 [static] |
Definition at line 1908 of file parser.c.
Referenced by cParser_parse_quirks_mode().
const int JSON_quirks_mode_start = 1 [static] |
Definition at line 1907 of file parser.c.
Referenced by cParser_parse_quirks_mode().
const int JSON_start = 1 [static] |
Definition at line 1733 of file parser.c.
Referenced by cParser_parse_strict().
const int JSON_string_en_main = 1 [static] |
const int JSON_string_error = 0 [static] |
const int JSON_string_first_final = 8 [static] |
Definition at line 1377 of file parser.c.
Referenced by JSON_parse_string().
const int JSON_string_start = 1 [static] |
Definition at line 1376 of file parser.c.
Referenced by JSON_parse_string().
const int JSON_value_en_main = 1 [static] |
const int JSON_value_error = 0 [static] |
const int JSON_value_first_final = 21 [static] |
Definition at line 471 of file parser.c.
Referenced by JSON_parse_value().
const int JSON_value_start = 1 [static] |
Definition at line 470 of file parser.c.
Referenced by JSON_parse_value().
Definition at line 78 of file parser.c.
Referenced by Init_parser().
Definition at line 78 of file parser.c.
Referenced by convert_encoding(), cParser_initialize(), Init_parser(), and JSON_parse_object().