diff options
Diffstat (limited to 'ruby_parser.c')
| -rw-r--r-- | ruby_parser.c | 34 |
1 files changed, 5 insertions, 29 deletions
diff --git a/ruby_parser.c b/ruby_parser.c index a965fc44dc..267f619bf9 100644 --- a/ruby_parser.c +++ b/ruby_parser.c @@ -34,12 +34,6 @@ #define parser_encoding const void -static int -is_ascii_string2(VALUE str) -{ - return is_ascii_string(str); -} - RBIMPL_ATTR_FORMAT(RBIMPL_PRINTF_FORMAT, 6, 0) static VALUE syntax_error_append(VALUE exc, VALUE file, int line, int column, @@ -144,12 +138,6 @@ utf8_encoding(void) return rb_utf8_encoding(); } -static VALUE -enc_associate(VALUE obj, parser_encoding *enc) -{ - return rb_enc_associate(obj, enc); -} - static parser_encoding * ascii8bit_encoding(void) { @@ -186,12 +174,6 @@ intern3(const char *name, long len, parser_encoding *enc) return rb_intern3(name, len, enc); } -static parser_encoding * -usascii_encoding(void) -{ - return rb_usascii_encoding(); -} - static int enc_symname_type(const char *name, long len, parser_encoding *enc, unsigned int allowed_attrset) { @@ -203,6 +185,7 @@ typedef struct { rb_encoding *enc; NODE *succ_block; const rb_code_location_t *loc; + rb_parser_assignable_func assignable; } reg_named_capture_assign_t; static int @@ -216,11 +199,12 @@ reg_named_capture_assign_iter(const OnigUChar *name, const OnigUChar *name_end, long len = name_end - name; const char *s = (const char *)name; - return rb_reg_named_capture_assign_iter_impl(p, s, len, enc, &arg->succ_block, loc); + return rb_reg_named_capture_assign_iter_impl(p, s, len, enc, &arg->succ_block, loc, arg->assignable); } static NODE * -reg_named_capture_assign(struct parser_params* p, VALUE regexp, const rb_code_location_t *loc) +reg_named_capture_assign(struct parser_params* p, VALUE regexp, const rb_code_location_t *loc, + rb_parser_assignable_func assignable) { reg_named_capture_assign_t arg; @@ -228,6 +212,7 @@ reg_named_capture_assign(struct parser_params* p, VALUE regexp, const rb_code_lo arg.enc = rb_enc_get(regexp); arg.succ_block = 0; arg.loc = loc; + arg.assignable = assignable; onig_foreach_name(RREGEXP_PTR(regexp), reg_named_capture_assign_iter, &arg); if (!arg.succ_block) return 0; @@ -347,8 +332,6 @@ static const rb_parser_config_t rb_global_parser_config = { .attr_get = rb_attr_get, - .ary_new = rb_ary_new, - .ary_push = rb_ary_push, .ary_new_from_args = rb_ary_new_from_args, .ary_unshift = rb_ary_unshift, @@ -367,7 +350,6 @@ static const rb_parser_config_t rb_global_parser_config = { .id2name = rb_id2name, .id2str = rb_id2str, .id2sym = rb_id2sym, - .sym2id = rb_sym2id, .str_catf = rb_str_catf, .str_cat_cstr = rb_str_cat_cstr, @@ -375,14 +357,11 @@ static const rb_parser_config_t rb_global_parser_config = { .str_new = rb_str_new, .str_new_cstr = rb_str_new_cstr, .str_to_interned_str = rb_str_to_interned_str, - .is_ascii_string = is_ascii_string2, .enc_str_new = enc_str_new, .str_vcatf = rb_str_vcatf, .rb_sprintf = rb_sprintf, .rstring_ptr = RSTRING_PTR, - .rstring_end = RSTRING_END, .rstring_len = RSTRING_LEN, - .obj_as_string = rb_obj_as_string, .int2num = rb_int2num_inline, @@ -405,7 +384,6 @@ static const rb_parser_config_t rb_global_parser_config = { .enc_get = enc_get, .enc_asciicompat = enc_asciicompat, .utf8_encoding = utf8_encoding, - .enc_associate = enc_associate, .ascii8bit_encoding = ascii8bit_encoding, .enc_codelen = enc_codelen, .enc_mbcput = enc_mbcput, @@ -414,7 +392,6 @@ static const rb_parser_config_t rb_global_parser_config = { .enc_isspace = enc_isspace, .enc_coderange_7bit = ENC_CODERANGE_7BIT, .enc_coderange_unknown = ENC_CODERANGE_UNKNOWN, - .usascii_encoding = usascii_encoding, .enc_mbminlen = enc_mbminlen, .enc_isascii = enc_isascii, .enc_mbc_to_codepoint = enc_mbc_to_codepoint, @@ -428,7 +405,6 @@ static const rb_parser_config_t rb_global_parser_config = { .errinfo = rb_errinfo, .set_errinfo = rb_set_errinfo, - .exc_raise = rb_exc_raise, .make_exception = rb_make_exception, .sized_xfree = ruby_sized_xfree, |
