mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* re.c (rb_reg_expr_str): use \xHH instead of \OOO.
* regerror.c (to_ascii): ditto. (onig_snprintf_with_pattern): ditto. (onig_snprintf_with_pattern): ditto. * string.c (rb_str_inspect): ditto. (rb_str_dump): ditto. * parse.y (parser_yylex): ditto. * ruby.c (proc_options): ditto. * file.c (rb_f_test): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14164 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
08eb58d3dd
commit
f4592d7bb0
9 changed files with 28 additions and 11 deletions
17
ChangeLog
17
ChangeLog
|
@ -1,3 +1,20 @@
|
||||||
|
Mon Dec 10 06:44:47 2007 Tanaka Akira <akr@fsij.org>
|
||||||
|
|
||||||
|
* re.c (rb_reg_expr_str): use \xHH instead of \OOO.
|
||||||
|
|
||||||
|
* regerror.c (to_ascii): ditto.
|
||||||
|
(onig_snprintf_with_pattern): ditto.
|
||||||
|
(onig_snprintf_with_pattern): ditto.
|
||||||
|
|
||||||
|
* string.c (rb_str_inspect): ditto.
|
||||||
|
(rb_str_dump): ditto.
|
||||||
|
|
||||||
|
* parse.y (parser_yylex): ditto.
|
||||||
|
|
||||||
|
* ruby.c (proc_options): ditto.
|
||||||
|
|
||||||
|
* file.c (rb_f_test): ditto.
|
||||||
|
|
||||||
Mon Dec 10 06:41:00 2007 Tanaka Akira <akr@fsij.org>
|
Mon Dec 10 06:41:00 2007 Tanaka Akira <akr@fsij.org>
|
||||||
|
|
||||||
* re.c (rb_reg_names): new method Regexp#names.
|
* re.c (rb_reg_names): new method Regexp#names.
|
||||||
|
|
2
file.c
2
file.c
|
@ -3486,7 +3486,7 @@ rb_f_test(int argc, VALUE *argv)
|
||||||
rb_raise(rb_eArgError, "unknown command ?%c", cmd);
|
rb_raise(rb_eArgError, "unknown command ?%c", cmd);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
rb_raise(rb_eArgError, "unknown command ?\\%03o", cmd);
|
rb_raise(rb_eArgError, "unknown command ?\\x%02x", cmd);
|
||||||
}
|
}
|
||||||
return Qnil; /* not reached */
|
return Qnil; /* not reached */
|
||||||
}
|
}
|
||||||
|
|
2
parse.y
2
parse.y
|
@ -7070,7 +7070,7 @@ parser_yylex(struct parser_params *parser)
|
||||||
|
|
||||||
default:
|
default:
|
||||||
if (!parser_is_identchar()) {
|
if (!parser_is_identchar()) {
|
||||||
rb_compile_error(PARSER_ARG "Invalid char `\\%03o' in expression", c);
|
rb_compile_error(PARSER_ARG "Invalid char `\\x%02x' in expression", c);
|
||||||
goto retry;
|
goto retry;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
2
re.c
2
re.c
|
@ -259,7 +259,7 @@ rb_reg_expr_str(VALUE str, const char *s, long len)
|
||||||
else if (!rb_enc_isspace(c, enc)) {
|
else if (!rb_enc_isspace(c, enc)) {
|
||||||
char b[8];
|
char b[8];
|
||||||
|
|
||||||
sprintf(b, "\\%03o", c);
|
sprintf(b, "\\x%02x", c);
|
||||||
rb_str_buf_cat(str, b, 4);
|
rb_str_buf_cat(str, b, 4);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
|
@ -197,7 +197,7 @@ static int to_ascii(OnigEncoding enc, UChar *s, UChar *end,
|
||||||
code = ONIGENC_MBC_TO_CODE(enc, p, end);
|
code = ONIGENC_MBC_TO_CODE(enc, p, end);
|
||||||
if (code >= 0x80) {
|
if (code >= 0x80) {
|
||||||
if (len + 5 <= buf_size) {
|
if (len + 5 <= buf_size) {
|
||||||
sprintf((char* )(&(buf[len])), "\\%03o",
|
sprintf((char* )(&(buf[len])), "\\x%02x",
|
||||||
(unsigned int )(code & 0377));
|
(unsigned int )(code & 0377));
|
||||||
len += 5;
|
len += 5;
|
||||||
}
|
}
|
||||||
|
@ -346,7 +346,7 @@ onig_snprintf_with_pattern(buf, bufsize, enc, pat, pat_end, fmt, va_alist)
|
||||||
int blen;
|
int blen;
|
||||||
|
|
||||||
while (len-- > 0) {
|
while (len-- > 0) {
|
||||||
sprintf((char* )bs, "\\%03o", *p++ & 0377);
|
sprintf((char* )bs, "\\x%02x", *p++ & 0377);
|
||||||
blen = onigenc_str_bytelen_null(ONIG_ENCODING_ASCII, bs);
|
blen = onigenc_str_bytelen_null(ONIG_ENCODING_ASCII, bs);
|
||||||
bp = bs;
|
bp = bs;
|
||||||
while (blen-- > 0) *s++ = *bp++;
|
while (blen-- > 0) *s++ = *bp++;
|
||||||
|
@ -355,7 +355,7 @@ onig_snprintf_with_pattern(buf, bufsize, enc, pat, pat_end, fmt, va_alist)
|
||||||
}
|
}
|
||||||
else if (!ONIGENC_IS_CODE_PRINT(enc, *p) &&
|
else if (!ONIGENC_IS_CODE_PRINT(enc, *p) &&
|
||||||
!ONIGENC_IS_CODE_SPACE(enc, *p)) {
|
!ONIGENC_IS_CODE_SPACE(enc, *p)) {
|
||||||
sprintf((char* )bs, "\\%03o", *p++ & 0377);
|
sprintf((char* )bs, "\\x%02x", *p++ & 0377);
|
||||||
len = onigenc_str_bytelen_null(ONIG_ENCODING_ASCII, bs);
|
len = onigenc_str_bytelen_null(ONIG_ENCODING_ASCII, bs);
|
||||||
bp = bs;
|
bp = bs;
|
||||||
while (len-- > 0) *s++ = *bp++;
|
while (len-- > 0) *s++ = *bp++;
|
||||||
|
|
2
ruby.c
2
ruby.c
|
@ -863,7 +863,7 @@ proc_options(int argc, char **argv, struct cmdline_options *opt)
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
rb_raise(rb_eRuntimeError,
|
rb_raise(rb_eRuntimeError,
|
||||||
"invalid option -\\%03o (-h will show valid options)",
|
"invalid option -\\x%02x (-h will show valid options)",
|
||||||
(int)(unsigned char)*s);
|
(int)(unsigned char)*s);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
4
string.c
4
string.c
|
@ -2971,7 +2971,7 @@ rb_str_inspect(VALUE str)
|
||||||
escape_codepoint:
|
escape_codepoint:
|
||||||
for (q = p-n; q < p; q++) {
|
for (q = p-n; q < p; q++) {
|
||||||
s = buf;
|
s = buf;
|
||||||
sprintf(buf, "\\%03o", *q & 0377);
|
sprintf(buf, "\\x%02x", *q & 0377);
|
||||||
while (*s) {
|
while (*s) {
|
||||||
str_cat_char(result, *s++, enc);
|
str_cat_char(result, *s++, enc);
|
||||||
}
|
}
|
||||||
|
@ -3083,7 +3083,7 @@ rb_str_dump(VALUE str)
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
*q++ = '\\';
|
*q++ = '\\';
|
||||||
sprintf(q, "%03o", c&0xff);
|
sprintf(q, "x%02x", c&0xff);
|
||||||
q += 3;
|
q += 3;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,7 @@ class TestRegexp < Test::Unit::TestCase
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_to_s
|
def test_to_s
|
||||||
assert_equal '(?-mix:\000)', Regexp.new("\0").to_s
|
assert_equal '(?-mix:\x00)', Regexp.new("\0").to_s
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_union
|
def test_union
|
||||||
|
|
|
@ -444,7 +444,7 @@ class TestString < Test::Unit::TestCase
|
||||||
|
|
||||||
def test_dump
|
def test_dump
|
||||||
a= S("Test") << 1 << 2 << 3 << 9 << 13 << 10
|
a= S("Test") << 1 << 2 << 3 << 9 << 13 << 10
|
||||||
assert_equal(S('"Test\\001\\002\\003\\t\\r\\n"'), a.dump)
|
assert_equal(S('"Test\\x01\\x02\\x03\\t\\r\\n"'), a.dump)
|
||||||
end
|
end
|
||||||
|
|
||||||
def test_dup
|
def test_dup
|
||||||
|
|
Loading…
Reference in a new issue