Ruby Select and Reject in one method
Looks as if Enumerable.partition
is exactly what you are after.
= Enumerable.partition(from ruby core)------------------------------------------------------------------------------ enum.partition {| obj | block } -> [ true_array, false_array ] enum.partition -> an_enumerator------------------------------------------------------------------------------Returns two arrays, the first containing the elements of enum forwhich the block evaluates to true, the second containing the rest.If no block is given, an enumerator is returned instead. (1..6).partition {|i| (i&1).zero?} #=> [[2, 4, 6], [1, 3, 5]]
Interesting, I didn't know that was there. ri
is an amazing tool...