nobu
38a24d73c8
* re.c (rb_reg_search): return byte offset. [ruby-dev:32452]
...
* re.c (rb_reg_match, rb_reg_match2, rb_reg_match_m): convert byte
offset to char index.
* string.c (rb_str_index): return byte offset. [ruby-dev:32472]
* string.c (rb_str_split_m): calculate in byte offset.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14171 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-10 04:50:35 +00:00
akr
eaba0fc94a
add ML ref.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14170 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-10 03:16:02 +00:00
ko1
b7090e3673
* benchmark/bm_vm1_neq.rb, bm_vm1_not.rb: prop set.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14169 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-10 00:59:04 +00:00
ko1
3db5e76e50
* benchmark/bm_vm1_neq.rb, bm_vm1_not.rb: added.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14168 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-10 00:57:10 +00:00
matz
126e7ed66f
* object.c (rb_obj_not_match): wrong test.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14167 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 23:25:20 +00:00
akr
862b6b68a4
update tests for String#inspect replacing \xHH instead of \OOO.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14166 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 23:18:25 +00:00
matz
6e12ae857e
* parse.y (parser_yylex): wrong token was generated. [ruby-dev:32498]
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14165 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 23:16:54 +00:00
akr
f4592d7bb0
* 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
2007-12-09 21:48:05 +00:00
akr
08eb58d3dd
* re.c (rb_reg_names): new method Regexp#names.
...
(rb_reg_named_captures): new method Regexp#named_captures
(match_regexp): new method MatchData#regexp.
(match_names): new method MatchData#names.
* lib/pp.rb (MatchData#pretty_print): show names of named captures.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14163 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 21:44:19 +00:00
matz
9d8075b99c
* parse.y (expr): redefinable not (!) operator.
...
* parse.y (arg): ditto.
* object.c (rb_obj_not): new method "!".
* object.c (rb_obj_not_equal): new method "!=".
* object.c (rb_obj_not_match): new method "!~".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14162 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 16:39:49 +00:00
akr
e56e8c758d
* re.c (rb_reg_s_last_match): accept named capture's name.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14161 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 13:35:38 +00:00
akr
2d101f0a87
Regexp#fixed_encoding? documented.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14160 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 11:57:06 +00:00
akr
7a7c26be73
document named capture of MatchData#{offset,begin,end,inspect}.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14159 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 07:35:54 +00:00
akr
18d8fbac54
* re.c (match_backref_number): new function for converting a backref
...
name/number to an integer.
(match_offset): use match_backref_number.
(match_begin): ditto.
(match_end): ditto.
(name_to_backref_number): raise IndexError instead of RuntimeError.
(match_inspect): show capture index.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14158 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 07:12:44 +00:00
ko1
a44f38ff52
* eval_intern.h (CHECK_STACK_OVERFLOW): reserve frame size.
...
[ruby-dev:32485]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 06:00:56 +00:00
ko1
3923d7f420
* vm.c (rb_thread_mark): use rb_gc_mark_maybe() for
...
VM stack specified by mark_stack_len.
* insnhelper.ci: clear vm stack extended by opt value.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 05:56:00 +00:00
akr
3a8f7f1d7f
* include/ruby/ruby.h (FilePathStringValue): defined. similar to
...
FilePathValue but no taint check.
* file.c (rb_get_path_no_checksafe): implementation of
FilePathStringValue.
(rb_file_s_basename): use FilePathStringValue.
(rb_file_s_dirname): ditto.
(rb_file_s_extname): ditto.
(rb_file_s_split): ditto.
(rb_file_join): ditto.
* dir.c (file_s_fnmatch): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14155 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 05:12:31 +00:00
akr
5a1c2b2677
* re.c (append_utf8): check unicode range.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14154 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 03:50:11 +00:00
nobu
78cc1c45ee
* lib/cgi.rb (read_multipart): exclude blanks from header values.
...
[ruby-list:44327]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14153 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 03:39:04 +00:00
nobu
54f236542d
* file.c (rb_get_path): use the original object if to_path method is
...
not defined. [ruby-dev:32473]
* io.c (rb_f_open): call to_open on non-string objects, instead of
to_str. [ruby-dev:32473]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14152 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 03:18:21 +00:00
nobu
45fa4a4b63
* string.c (tr_find): returns true if no characters to be removed is
...
specified.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 03:12:25 +00:00
nobu
0076f3b3f8
* parse.y (parser_magic_comment): delimits with a semicolon.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14150 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 03:03:18 +00:00
nobu
4892115ada
* 2007-12-09
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14149 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 02:30:22 +00:00
nobu
54c146d2c3
* string.c (tr_trans): get rid of segfaults when has mulitbytes but
...
source sets have no mulitbytes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14148 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 02:29:24 +00:00
akr
221e6de720
fix added test.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 01:25:32 +00:00
akr
be98b422b0
more tests.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14146 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 00:56:10 +00:00
akr
56f8092459
more tests.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14145 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-09 00:31:02 +00:00
akr
78eae5da62
* encoding.c (rb_enc_precise_mbclen): return needmore if underlying
...
implementation returns a length longer than e-p.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14144 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 19:10:58 +00:00
akr
4db4d80357
fix previous commit.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14143 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 18:47:42 +00:00
akr
cbff149e47
add a test for casecmp with sjis string.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14142 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 18:45:20 +00:00
akr
cde5b2a9cf
* encoding.c (rb_enc_mbclen): return 1 if underlying implementation
...
returns a length longer than e-p.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 18:41:47 +00:00
akr
6c6cf008cd
add a test for concatinating euc-jp and ascii-8bit string.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14140 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 17:41:47 +00:00
akr
ec165c09b0
ignore y.output.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14139 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 14:58:56 +00:00
akr
0bb9c3e6d9
unused variables removed.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14138 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 09:24:52 +00:00
akr
1dd06c4301
* signal.c (posix_signal): return value.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14137 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 09:01:43 +00:00
akr
d4463c42c0
* enum.c (enum_count): suppress warning.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14136 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 08:53:20 +00:00
gotoyuzo
cf95a55cc9
* test/openssl/test_pkcs7.rb: Remove redundant module namespace.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14135 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 08:23:07 +00:00
akr
5b57724691
* ruby.c (proc_options): make rb_raise format as a string literal to
...
avoid warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 08:11:52 +00:00
akr
b12bb50149
* re.c (rb_reg_check_preprocess): new function for validating regexp
...
fragment.
* parse.y (regexp): invoke reg_fragment_check.
(reg_fragment_check): defined.
(reg_fragment_check_gen): defined.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14133 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 07:21:05 +00:00
akr
9667f7953e
add test for UTF-8 bit pattern.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14132 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 04:31:26 +00:00
akr
f1b7e60cb9
* encoding.c (rb_enc_mbclen): make it never fail.
...
(rb_enc_nth): don't check the return value of rb_enc_mbclen.
(rb_enc_strlen): ditto.
(rb_enc_precise_mbclen): return needmore(1) if e <= p.
(rb_enc_get_ascii): new function for extracting ASCII character.
* include/ruby/encoding.h (rb_enc_get_ascii): declared.
* include/ruby/regex.h (ismbchar): removed.
* re.c (rb_reg_expr_str): use rb_enc_get_ascii.
(unescape_escaped_nonascii): use rb_enc_precise_mbclen to determine
the termination of escaped non-ASCII character.
(unescape_nonascii): use rb_enc_precise_mbclen.
(rb_reg_quote): use rb_enc_get_ascii.
(rb_reg_regsub): use rb_enc_get_ascii.
* string.c (rb_str_reverse) don't check the return value of
rb_enc_mbclen.
(rb_str_split_m): don't call rb_enc_mbclen with e <= p.
* parse.y (is_identchar): use ISASCII.
(parser_ismbchar): removed.
(parser_precise_mbclen): new macro.
(parser_isascii): new macro.
(parser_tokadd_mbchar): use parser_precise_mbclen to check invalid
character precisely.
(parser_tokadd_string): use parser_isascii.
(parser_yylex): ditto.
(is_special_global_name): don't call is_identchar with e <= p.
(rb_enc_symname_p): ditto.
[ruby-dev:32455]
* ext/tk/sample/tkextlib/vu/canvSticker2.rb: remove coding cookie
because the encoding is not UTF-8. [ruby-dev:32475]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14131 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-08 02:50:43 +00:00
gotoyuzo
990bec9702
* ext/openssl/lib/net/ftptls.rb, ext/openssl/lib/net/telnets.rb:
...
half-finished libraries are discontinued.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14130 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-07 11:35:13 +00:00
akr
9bc20bef7a
* lib/pp.rb: use Hash for recursion check as inspect.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14129 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-07 06:45:28 +00:00
nobu
62c94002ef
* thread.c (recursive_pop): use object ID.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14128 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-07 06:04:03 +00:00
nobu
2257138aa5
* array.c (flatten): some performance improvements, based on a patch
...
from Yusuke ENDOH <mame AT tsg.ne.jp> in [ruby-core:13877].
[ruby-core:13851]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14127 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-07 03:27:20 +00:00
nobu
ff2ec563b2
* thread.c (rb_exec_recursive): use Hash instead of Array for
...
performance improvement. [ruby-core:13898]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-07 03:22:28 +00:00
matz
0f8e9a24c1
* parse.y (arg): typo fixed ("!" -> "|") in the ripper code.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14125 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-07 02:52:37 +00:00
matz
aff0d98a5b
* parse.y (arg): tUPLUS no longer works as identity operation any
...
more. inspired by [ruby-talk:265532].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14124 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-07 02:51:31 +00:00
akr
a42bb2a456
add test for [ruby-dev:32452].
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14123 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-07 01:42:16 +00:00
akr
92af9c0d54
reproduce segv.
...
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@14122 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-12-06 10:09:44 +00:00