summaryrefslogtreecommitdiff
path: root/enumerator.c
AgeCommit message (Collapse)Author
2009-12-31* enumerator.c: Remove a duplicated declaration.knu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@26215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-23* array.c (ary_resize_capa): Remove an unused function.knu
* array.c, bignum.c, dir.c, enumerator.c, gc.c, io.c, numeric.c, object.c, re.c, string.c, struct.c: Mixing two styles is not a good thing. Stick with the K&R style in 1.8. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@23052 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-02-02* enumerator.c: Introduce id_each to save rb_itern() and SYM2ID()knu
calls. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@21977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-01-21* enumerator.c (inspect_enumerator, yielder_new_i): addednobu
prototypes to suppress warnings due to a bug of VC6. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@21716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-17* enumerator.c (inspect_enumerator): Implement #inspect.knu
[ruby-dev:37248]-[ruby-dev:37263] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@20851 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-11* enumerator.c (enumerator_next, enumerator_rewind),knu
lib/generator.rb (Enumerator#rewind): If the enclosed object responds to a "rewind" method, call it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@20645 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-11* enumerator.c (enumerator_initialize): Add an ability to generateknu
an enumerator from a block. [ruby-dev:35903] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@20631 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-11* enumerator.c (enum_each_with_object): Addknu
Enumerable#each_with_object and Enumerator#with_object. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@20627 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-10* enumerator.c (enumerator_next): Fix a typo: s/rewinded/rewound/.knu
* lib/generator.rb (Enumerator#next): Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@20605 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-21* enumerator.c (enumerator_ptr), lib/generator.rb:knu
Enumerable::Enumerator is renamed to Enumerator. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@18749 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-19* enumerator.c (Init_Enumerator): Rename Enumerable::Enumerator toknu
just Enumerator and redefine the former as an alias for backward compatibility. * lib/set.rb (TC_Set#test_each), test/ruby/test_enumerator.rb (TestEnumerator#test_initialize): Enumerable::Enumerator is now called Enumerator. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@18705 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-14* enumerator.c (Init_Enumerator): Define ::Enumerator as alias forknu
Enumerable::Enumerator for forward compatibility. * lib/rinda/tuplespace.rb (Rinda::TupleBag#initialize): Use enum_for instead of hardcoding Enumerable::Enumerator. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@18602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-03* enumerator.c (enumerator_init_copy): Take care ofknu
initialize_copy as well as initialize. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16791 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-06-03* enumerator.c (enumerator_allocate, enumerator_ptr): Properlyknu
detect if the object is initialized and raise error when appropriate. (enumerator_initialize): Fix a typo in rdoc. [ruby-core:17052] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16768 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-24* array.c (rb_ary_slice_bang): Be consistent with Array#slice()knu
and String#slice!(). Just return nil when a negative length or out of boundary index is given instead of raising an exception via internal functions. (rb_ary_slice_bang): should not use rb_ary_subseq() which shares internal pointer. splice modifies the receiver right after subseq. [ruby-dev:34005] (rb_ary_slice_bang): should adjust length before making sub-array. * enumerator.c (Init_Enumerator): Override Enumerable::Enumerator#each_with_index with #with_index. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16582 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-23* enumerator.c (proc_call): Remove an unused static function.knu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-14* array.c (rb_ary_count): Override Enumerable#count for betterknu
performance. (rb_ary_nitems): Undo the backport. Use #count {} instead. * enumerator.c (enumerator_iter_i): Remove an unused function. (enumerator_with_index, enumerator_each): Remove unused variables. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-13* enumerator.c: Update rdoc.knu
(enumerator_initialize): Discourage the use. (enum_each_slice, enum_each_cons, enumerator_each) (enumerator_with_index): Add a note about a call without a block. * NEWS: Intentionally omit enum_slice and enum_cons, which are removed in 1.9. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-22* enumerator.c (enumerator_initialize): Remove an undocumentedknu
feature (passing a block to the constructor) that's broken. This is not what I intended. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-21* enumerator.c (enumerator_init): preserve the method name in ID.knu
* enumerator.c (enumerator_each): need not to call rb_to_id(). * enumerator.c (enumerator_with_index): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16126 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-20* enumerator.c: Resolve the method every time an enumerationknu
method is run, not once when the enumerator is initialized as it was before, so that method_missing() and method (re)definition afterwards are both in effect; pointed out in: [ruby-core:16441] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16108 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-14* ruby.h (rb_block_call_func): Fix prototype.knu
* enumerator.c (enumerator_iter_i, enumerator_each_i): Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16005 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-14 * enumerator.c (enumerator_mark, enumerator_iter_i, enumerator_each_i,usa
enumerator_allocate): add prototype. * enumerator.c (enumerator_each_i): declare unused two arguments. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@16002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-10* enumerator.c (rb_eStopIteration), eval.c (rb_f_loop), ruby.h:knu
Add a new exception class StopIteration, which breaks Kernel#loop iteration when raised; backported from 1.9. * enumerator.c (enumerator_next, enumerator_rewind): Implement #next and #rewind using the "generator" library. * lib/generator.rb: Implement Enumerable::Enumerator#next and #rewind. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15954 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-09* enumerator.c, inits.c (rb_call_inits), ruby.h, intern.h,knu
ext/enumerator, common.mk (OBJS, enumerator.$(OBJEXT)): Make the enumerator module built-in, * enumerator.c: New method: Enumerable::Enumerator#with_index. * enum.c (enum_each_with_index): Enumerable#each_with_index now returns an enumerator instead of raising an exception if no block is given. Enumerable#enum_with_index, formerly defined in the enumerator module, is kept as an alias to each_with_index for backward compatibility. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@15934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e