diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | string.c | 19 |
2 files changed, 22 insertions, 2 deletions
@@ -1,3 +1,8 @@ +Wed Dec 17 19:53:08 2008 Akinori MUSHA <[email protected]> + + * string.c (rb_str_each): Add a deprecation warning to + String#each. + Wed Dec 17 18:40:11 2008 Akinori MUSHA <[email protected]> * object.c (rb_obj_id_obsolete): s/will be deprecated/is deprecated/. @@ -3768,7 +3768,6 @@ rb_f_split(argc, argv) /* * call-seq: - * str.each(separator=$/) {|substr| block } => str * str.each_line(separator=$/) {|substr| block } => str * * Splits <i>str</i> using the supplied parameter as the record separator @@ -3854,6 +3853,22 @@ rb_str_each_line(argc, argv, str) return str; } +/* + * call-seq: + * str.each(separator=$/) {|substr| block } => str + * + * + */ +static VALUE +rb_str_each(argc, argv, str) + int argc; + VALUE *argv; + VALUE str; +{ + rb_warning("treating String as Enumerable object is deprecated; use String#each_line/lines"); + return rb_str_each_line(argc, argv, str); +} + /* * Document-method: bytes @@ -5077,7 +5092,7 @@ Init_String() rb_define_method(rb_cString, "squeeze!", rb_str_squeeze_bang, -1); rb_define_method(rb_cString, "each_line", rb_str_each_line, -1); - rb_define_method(rb_cString, "each", rb_str_each_line, -1); + rb_define_method(rb_cString, "each", rb_str_each, -1); rb_define_method(rb_cString, "each_byte", rb_str_each_byte, 0); rb_define_method(rb_cString, "each_char", rb_str_each_char, 0); |