Граф коммитов

16778 Коммитов

Автор SHA1 Сообщение Дата
matz 970cfee510 * string.c (rb_str_hash): avoid calling rb_enc_str_asciionly_p().
* string.c (rb_str_replace): avoid redundant calling rb_str_new4().

* string.c (str_replace): factor out replacement from
  rb_str_replace() without type check nor discarding the
  destination contents.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-25 00:43:23 +00:00
nobu d629684bb9 * string.c (rb_str_rpartition): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-24 23:06:57 +00:00
matz 7102c3b1a1 * test/ruby/test_hash.rb (TestHash::test_equal2): recursive hashes
are handled properly now. ref: [ruby-core:23402]

* test/ruby/test_m17n.rb (TestM17N#test_sprintf_p): test fixed

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-24 23:00:01 +00:00
nobu 7a938f98f9 * string.c (rb_str_partition): should use the converted result. a
patch from Marc-Andre Lafortune at [ruby-core:23540].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-24 22:50:11 +00:00
svn 74c7141705 * 2009-05-25
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-24 20:34:32 +00:00
matz 706f910300 * lib/cgi/core.rb (CGI::HTTP_STATUS): typo fixed. a patch from
Nobuhiro IMAI.  [ruby-dev:38538]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-24 20:34:21 +00:00
nobu 02fb261ec1 * thread.c (rb_exec_recursive_paired): new function for proper
handling of recursive arrays.  [EXPERIMENTAL] [ruby-core:23402]

* array.c (rb_ary_equal, rb_ary_eql, rb_ary_cmp): use above.

* hash.c (hash_equal): ditto.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-24 13:48:23 +00:00
nobu b55ff99891 * error.c (syserr_initialize): errno is int.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-24 13:39:35 +00:00
akr 6eebf142e1 update rdoc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-24 13:37:43 +00:00
yugui 8875ffc412 * configure.in ($ridir): new configuration. [ruby-core:23520].
c.f. [ruby-core:23519].

  (--with-ridir): new configure option.

* tool/instruby.rb (:doc, :rdoc): uses $ridir instead of
  a fixed path.

* lib/rdoc/ri/paths.rb: follows $ridir.

* Makefile.in: removes RIDATADIR which is no longer used.

* bcc32/Makefile.sub: generates the 'ridir' entry for RbConfig.
  removes RIDATADIR which is no longer used.

* win32/Makefile.sub: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-23 16:07:46 +00:00
svn 803c055043 * 2009-05-24
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-23 15:59:14 +00:00
matz 0fd3bdac6a * string.c (rb_str_each_char): return original string.
[ruby-core:23499]

* string.c (rb_str_each_codepoint): protect string from
  modification.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-23 15:59:09 +00:00
nobu 34cf45ab19 * ext/dl/handle.c (rb_dlhandle_s_sym): added a method to access
using RTLD_NEXT.  [ruby-dev:38152]

* ext/dl/handle.c (Init_dlhandle): added constants DEFAULT and
  NEXT which correspond to RTLD_DEFAULT and RTLD_NEXT.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-23 12:49:00 +00:00
nobu 96e6cfb835 * ext/dl/lib/dl/cparser.rb (DL::CParser#parse_struct_signature):
splitting with regexp source string is obsolete.  a patch from
  Minwoo Lee at [ruby-core:23494].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-23 09:53:15 +00:00
nobu fb3fa6aa4e * ext/dl/cptr.c (rb_dlptr_cmp): return signed value, and restrict
to Fixnum.  [ruby-dev:38533]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-23 09:48:54 +00:00
yugui 4bdd854347 * missing/vsnprintf.c (errno): [BUG] fixes a compilation
error on SIZEOF_LONG > SIZEOF_INT.
  (BSD_vfprintf): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-22 15:22:36 +00:00
svn 5220b19b3e * 2009-05-23
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-22 15:22:23 +00:00
yugui 7378c8fa61 * spec/default.mspec: follows runruby.rb's move at r23542.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-22 15:22:18 +00:00
mame dfffa96baa * NEWS: add Time#to_r.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23545 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-22 12:39:22 +00:00
akr 1d9f6c92b7 update rdoc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-22 12:32:30 +00:00
yugui 8d1e0c0a5a * config.guess: moved into tool/.
* config.sub: ditto.

* install-sh: ditto

* configure.in: follows the moves.

* LEGAL: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23543 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-22 11:48:52 +00:00
yugui a654e0b57b * instruby.rb: moved into tool/.
* mkconfig.rb: ditto.

* rubytest.rb: ditto.

* runruby.rb: ditto.

* common.mk: follows the moves.

* configure.in: ditto.

* win32/Makefile.sub: ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23542 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-22 11:48:42 +00:00
matz 58949cf8f3 * array.c (rb_ary_slice_bang): avoid call of rb_scan_args() unless
it's really necessary.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-21 22:35:43 +00:00
svn 8d8a31bd7a * 2009-05-22
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-21 20:08:12 +00:00
matz 3ee7fcc763 * string.c (rb_str_count): optimized for 1byte string count by
avoiding tr_setup_table().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23523 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-21 20:08:03 +00:00
nobu 1b4d0c76de * template/id.h.tmpl, id.h (enum ruby_method_ids): added some IDs.
* debug.c (dummy_gdb_enums): added enum ruby_method_ids.

* .gdbinit (rp): improved output of Symbol.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23511 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-21 13:17:54 +00:00
nobu 7427390cad .gdbinit (rp): missing "else" after T_NODE block.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23510 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-21 12:42:54 +00:00
nobu 08732d4f57 * missing/vsnprintf.c (BSD_vfprintf): support for 'z' modifier.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-21 12:07:25 +00:00
yugui 8f1f47a072 * gem_prelude.rb (Gem.default_dir and misc.): use rubylibprefix.
follows the chagne in r23368.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23508 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-21 10:00:48 +00:00
nobu c6a24c45f8 * include/ruby/ruby.h (RB_EVENT_HOOKS_HAVE_CALLBACK_DATA):
new macro for compatibility check.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-21 03:07:45 +00:00
nobu 060f433f48 * include/ruby/ruby.h (rb_long2int, RARRAY_LENINT): check long to
cast to int.  [ruby-dev:38508]

* struct.c, vm_eval.c, vm_insnhelper.c: use RARRAY_LENINT.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 16:43:41 +00:00
yugui c573aaf73f NEWS (--program-prefix and --program-suffix): describe r23368.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 14:04:04 +00:00
yugui a1b5cd1ca2 * rb_enc_get_index: allows an arbitrary RData as the argument but not
only what points a rb_encoding.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 12:16:23 +00:00
yugui 9d0add09cf * spec/.gitignore: ignores rubyspec/ and mspec/.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 11:55:39 +00:00
nobu e2a43c9e09 * struct.c (rb_struct_new): get rid of too large alloca.
* struct.c (rb_struct_hash): use long.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23499 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 10:41:46 +00:00
nobu 53812198da * vm_eval.c, vm_insnhelper.c: argument number is restricted to
int, and fixed overflow.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 09:58:29 +00:00
nobu 6494314d2a * enumerator.c (inspect_enumerator): should use long.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 09:34:34 +00:00
nobu 1da3e0f992 * enum.c (zip_ary): should use long.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 08:58:56 +00:00
matz 0980fe7903 * encoding.c (rb_enc_fast_mbclen): faster mbclen for strings known
to be valid.

* string.c (enc_strlen): coderange specified version of
  rb_enc_strlen().  use rb_enc_fast_mbclen() if coderange is 7bit
  or valid.

* string.c (str_gsub): use rb_enc_fast_mbclen().

* string.c (rb_str_reverse, rb_str_split_m, rb_str_each_char,
  scan_once): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 04:44:36 +00:00
matz c81863c321 * lib/tempfile.rb (Tempfile#unlink): close first for Windows. a
patch from Florian Frank.  [ruby-core:23505]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-20 00:35:30 +00:00
matz 91e5ba1cb8 * encoding.c (rb_enc_codepoint_len): combine rb_enc_codepoint()
and rb_enc_codelen() in one function to reduce calls.

* encoding.c (rb_enc_codepoint): compatibility function.

* sprintf.c (rb_str_format): use rb_enc_codepoint_len().

* string.c (rb_str_inspect, rb_str_upcase_bang,
  rb_str_downcase_bang, rb_str_capitalize_bang,
  rb_str_swapcase_bang, trnext, tr_trans, rb_str_delete_bang,
  rb_str_squeeze_bang, rb_str_count, rb_str_split_m,
  rb_str_each_line, rb_str_each_codepoint, rb_str_lstrip_bang,
  sym_printable): ditto.

* transcode.c (make_econv_exception): use rb_enc_mbc_to_codepoint()

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-19 16:59:22 +00:00
svn 2510c468ff * 2009-05-20
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-19 15:07:52 +00:00
matz 9553911f29 * vm_method.c (rb_attr): should preserve encoding info.
[ruby-dev:38498]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-19 15:07:45 +00:00
mame 3465856922 * time.c (time_minus): always return a Float. [ruby-dev:38446]
* time.c (time_to_r): new method.  [ruby-dev:38461]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-19 14:00:04 +00:00
matz 4d4bd7ab95 * class.c (clone_method): add cast to remove warning from
rb_gc_write_barrier().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23489 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-19 05:00:19 +00:00
matz 7d1f48b5c3 * struct.c (struct_ivar_get): new function to avoid repeated
rb_intern() calls.

* struct.c (rb_struct_iv_get): use struct_ivar_get()

* struct.c (num_members): ditto.

* struct.c (rb_struct_s_members): ditto.

* class.c (rb_singleton_class): cache symbol to reduce calls to
  rb_intern().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-19 04:58:36 +00:00
svn 6009d184ff * 2009-05-19
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-18 22:53:13 +00:00
akr cef83891ca * test/test_time.rb: make tests timezone independent.
reported by zunda.  [ruby-dev:38492] 



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-18 22:53:05 +00:00
svn 5a83cfaef5 * 2009-05-18
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23484 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-18 12:41:15 +00:00
akr 8ce34a86a2 * lib/pathname.rb (Pathname#sub): suppress a warning. [ruby-dev:38488]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-05-18 12:41:08 +00:00