From: sylvain.daubert@... Date: 2018-07-05T18:32:41+00:00 Subject: [ruby-core:87819] [Ruby trunk Feature#14887] Array#delete_if does not use #delete Issue #14887 has been updated by sdaubert (Sylvain Daubert). marcandre (Marc-Andre Lafortune) wrote: > You probably meant "... call #delete_at in the background". > Yes marcandre (Marc-Andre Lafortune) wrote: > You probably meant "... call #delete_at in the background". Yes, Marc-Andr��, that's what i want to mean... > Overall, I'm very sceptical about the request. Array could have been built using some kind of `RandomAccess` module with a minimal set of primitives to read, write, add and remove elements, but that's simply not the case. `delete_if` doesn't even call `Array#each` for example, and `Array#each` doesn't call `Array#[]`. I think it's unrealistic at this point to go in that direction. I don't known ruby background. If it seems impossible, forget about that. ---------------------------------------- Feature #14887: Array#delete_if does not use #delete https://bugs.ruby-lang.org/issues/14887#change-72837 * Author: sdaubert (Sylvain Daubert) * Status: Open * Priority: Normal * Assignee: matz (Yukihiro Matsumoto) * Target version: ---------------------------------------- When a class inherits from Array, and its #delete methods is modified, #delete_if and #reject! do not call this method. From sources, its an internal C method which is called instead. Is there a way to modify #delete_if and #reject! to use #delete? This would ease inheriting of Array class. -- https://bugs.ruby-lang.org/ Unsubscribe: